Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

+ -

  Comment: Write them for your own modules. (Score 1) on 2010.01.03 17:04

by tonyc on 2010.01.03 17:04 (#71472)
Attached to: How to write more RT tickets than anybody else
If you removed the tickets I created for my own modules, I expect I wouldn't appear in the all time top 40.
Read More 3 comments
Comments: 3
+ -

  Comment: Re:X_Geocode data? (Score 1) on 2009.11.10 0:56

According to the documentation "geocoding results without displaying them on a map is prohibited".

Read More 5 comments
Comments: 5
+ -

  Comment: X_Geocode data? (Score 1) on 2009.11.09 22:30

What's the source for the X_Geocode data? The other sources I've seen for similar data in Australia have been expensive. Nothing in the list at data.australia.gov.au popped out at me as the source.

Read More 5 comments
Comments: 5
+ -

  Comment: Re:Strongly, strongly disagree (Score 1) on 2009.09.30 19:30

by tonyc on 2009.09.30 19:30 (#70726)
Attached to: Why is Perl on Mac such a disaster
Tests fine and your sample works on 10.6 in both the 32 and 64-bit modes of the system perl.
Read More 44 comments
Comments: 44
+ -

  Comment: Re:Good idea! (Score 1) on 2009.09.21 7:40

by tonyc on 2009.09.21 7:40 (#70647)
Attached to: Imager file format modules

As a mechanism, I'd probably have it depend on Alien::libgif (for example) which could then could either detect or build libgif.

My main problem with the typical Alien:: module is that it installs the module from source rather than as a native package for the current system, which means if the vendor releases any security updates Imager (or whatever) will still be using vulnerable libraries.

One option could be to have Alien::libgif realize it was on a Debian system and then depend on say Alien::Debian::libgif which apt-get installs libgif-dev, or on Redhat, Alien::Redhat::libgif which yum installs giflib-devel

Of course, if it detected libgif already installed it would just return that.

If the system didn't have a known package manager (or libgif package) it could then install from source, possibly as Alien::Source::libgif.

Of course, this could be overcomplex, but I really don't want to add extra insecure software to user's machines.

Read More 5 comments
Comments: 5
+ -

  Journal: Imager file format modules on 2009.09.20 22:25

Journal by tonyc on 2009.09.20 22:25
User Journal

I'm considering splitting out Imager's file support for those file types that require external libraries, in particular:

  • GIF
  • TIFF
  • JPEG
  • PNG

Possibly also the font file handlers:

  • Freetype 1.x
  • Freetype 2.x
  • T1Lib
  • Win32
Read More 5 comments
Comments: 5
+ -

  Comment: Re:Snow Leopard perl is both (Score 1) on 2009.09.20 3:06

by tonyc on 2009.09.20 3:06 (#70642)
Attached to: Mac-Carbon Makefile.PL 64-bit Check
Yeah, what you said :)
Read More 11 comments
Comments: 11
+ -

  Comment: Re:Snow Leopard perl is both (Score 1) on 2009.09.20 1:06

by tonyc on 2009.09.20 1:06 (#70640)
Attached to: Mac-Carbon Makefile.PL 64-bit Check

build log

I used script to capture the output, so there's a few control characters in there, but the Makefile.PL and make were with VERSIONER_PERL_PREFER_32_BIT=yes and the make test with VERSIONER_PERL_PREFER_32_BIT=no

Read More 11 comments
Comments: 11
+ -

  Comment: Re:Snow Leopard perl is both (Score 1) on 2009.09.18 23:28

by tonyc on 2009.09.18 23:28 (#70629)
Attached to: Mac-Carbon Makefile.PL 64-bit Check
Comments: 11
+ -

  Comment: Re:Snow Leopard perl is both (Score 1) on 2009.09.18 19:22

by tonyc on 2009.09.18 19:22 (#70626)
Attached to: Mac-Carbon Makefile.PL 64-bit Check
Both URLs return a 403 error.
Read More 11 comments
Comments: 11
+ -

  Comment: Snow Leopard perl is both (Score 1) on 2009.09.18 0:05

by tonyc on 2009.09.18 0:05 (#70614)
Attached to: Mac-Carbon Makefile.PL 64-bit Check
Scarily enough perl in Snow Leopard is compiled as both 32 and 64 bit, and when you build extensions it builds them as both too (and ppc too).

This can be confusing when you have 32-bit libraries installed.

neptune:Imager tony$ export VERSIONER_PERL_PREFER_32_BIT=no
neptune:Imager tony$ perl -V
Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
  Platform:
    osname=darwin, osvers=10.0, archname=darwin-thread-multi-2level
    uname='darwin neige.apple.com 10.0 darwin kernel version 10.0.0d8: tue may 5 19:29:59 pdt 2009; root:xnu-1437.2~2release_i386 i386 '
    config_args='-ds -e -Dprefix=/usr -Dccflags=-g  -pipe  -Dldflags= -Dman3ext=3pm -Duseithreads -Duseshrplib -Dinc_version_list=none -Dcc=gcc-4.2'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc-4.2', ccflags ='-arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include',
    optimize='-Os',
    cppflags='-g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include'
    ccversion='', gccversion='4.2.1 (Apple Inc. build 5646)', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='gcc-4.2 -mmacosx-version-min=10.6', ldflags ='-arch x86_64 -arch i386 -arch ppc -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib
    libs=-ldbm -ldl -lm -lutil -lc
    perllibs=-ldl -lm -lutil -lc
    libc=/usr/lib/libc.dylib, so=dylib, useshrplib=true, libperl=libperl.dylib
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-arch x86_64 -arch i386 -arch ppc -bundle -undefined dynamic_lookup -L/usr/local/lib'

Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_64_BIT_ALL
                        USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
                        USE_PERLIO USE_REENTRANT_API
  Locally applied patches:
        /Library/Perl/Updates/<version> comes before system perl directories
        installprivlib and installarchlib points to the Updates directory
  Built under darwin
  Compiled at Jun 24 2009 00:35:27
  @INC:
    /Library/Perl/Updates/5.10.0
    /System/Library/Perl/5.10.0/darwin-thread-multi-2level
    /System/Library/Perl/5.10.0
    /Library/Perl/5.10.0/darwin-thread-multi-2level
    /Library/Perl/5.10.0
    /Network/Library/Perl/5.10.0/darwin-thread-multi-2level
    /Network/Library/Perl/5.10.0
    /Network/Library/Perl
    /System/Library/Perl/Extras/5.10.0/darwin-thread-multi-2level
    /System/Library/Perl/Extras/5.10.0
    .
neptune:Imager tony$ export VERSIONER_PERL_PREFER_32_BIT=yes
neptune:Imager tony$ perl -V
Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
  Platform:
    osname=darwin, osvers=10.0, archname=darwin-thread-multi-2level
    uname='darwin neige.apple.com 10.0 darwin kernel version 10.0.0d8: tue may 5 19:29:59 pdt 2009; root:xnu-1437.2~2release_i386 i386 '
    config_args='-ds -e -Dprefix=/usr -Dccflags=-g  -pipe  -Dldflags= -Dman3ext=3pm -Duseithreads -Duseshrplib -Dinc_version_list=none -Dcc=gcc-4.2'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc-4.2', ccflags ='-arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include',
    optimize='-Os',
    cppflags='-g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include'
    ccversion='', gccversion='4.2.1 (Apple Inc. build 5646)', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='gcc-4.2 -mmacosx-version-min=10.6', ldflags ='-arch x86_64 -arch i386 -arch ppc -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib
    libs=-ldbm -ldl -lm -lutil -lc
    perllibs=-ldl -lm -lutil -lc
    libc=/usr/lib/libc.dylib, so=dylib, useshrplib=true, libperl=libperl.dylib
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-arch x86_64 -arch i386 -arch ppc -bundle -undefined dynamic_lookup -L/usr/local/lib'

Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_ITHREADS
                        USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
  Locally applied patches:
        /Library/Perl/Updates/<version> comes before system perl directories
        installprivlib and installarchlib points to the Updates directory
  Built under darwin
  Compiled at Jun 24 2009 00:35:28
  @INC:
    /Library/Perl/Updates/5.10.0
    /System/Library/Perl/5.10.0/darwin-thread-multi-2level
    /System/Library/Perl/5.10.0
    /Library/Perl/5.10.0/darwin-thread-multi-2level
    /Library/Perl/5.10.0
    /Network/Library/Perl/5.10.0/darwin-thread-multi-2level
    /Network/Library/Perl/5.10.0
    /Network/Library/Perl
    /System/Library/Perl/Extras/5.10.0/darwin-thread-multi-2level
    /System/Library/Perl/Extras/5.10.0
    .
neptune:Imager tony$
Read More 11 comments
Comments: 11
+ -

  Comment: which windows? (Score 1) on 2009.07.02 19:04

by tonyc on 2009.07.02 19:04 (#69230)
Attached to: Web Developer's Newest Support Tool?
One error - it mis-diagnoses Windows XP x64 as Windows Server 2003.
Read More 2 comments
Comments: 2
+ -

  Comment: Re:x64 Perl (Score 1) on 2009.02.05 23:54

by tonyc on 2009.02.05 23:54 (#67236)
Attached to: Win32::API port to 64-bits

The calling conventions are also very different - Win32 uses a purely stack parameter passing convention, while x64 uses the standard amd64 parameter passing convention - with the first four parameters going into registers if possible.

For example:

GetTextFace(dc, sizeof(facename), facename)

compiles to:

; look Ma! No stack!
lea r8, OFFSET FLAT:facename
mov edx, 80 ; 00000050H
mov rcx, QWORD PTR dc
call QWORD PTR __imp_GetTextFaceA

Read More 6 comments
Comments: 6