Ebuild+small patch for accessing Interbase/Firebird databases via perl DBI interface. Reproducible: Always
Created attachment 229403 [details, diff] Patch to disable local db testing
Created attachment 229405 [details] Ebuild
I can confirm as working: Portage 2.1.9.25 (default/linux/amd64/10.0/server, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.28-gentoo-r1 x86_64) ================================================================= System uname: Linux-2.6.28-gentoo-r1-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4000+-with-gentoo-1.12.13 Timestamp of tree: Fri, 14 Jan 2011 16:00:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.0_p28 dev-java/java-config: 2.1.9-r1 dev-lang/python: 2.4.4-r6::<unknown repository>, 2.5.2-r7, 2.6.2-r1 dev-util/ccache: 2.4-r9 dev-util/cmake: 2.6.4-r3 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.63-r1 sys-devel/automake: 1.6.3::<unknown repository>, 1.9.6-r2::<unknown repository>, 1.10.2, 1.11.1 sys-devel/binutils: 2.18-r3 sys-devel/gcc: 3.4.6-r2::<unknown repository>, 4.3.4 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b sys-devel/make: 3.81::<unknown repository> virtual/os-headers: 2.6.28-r1 (sys-kernel/linux-headers) ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -fforce-addr -march=k8" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -pipe -fforce-addr -march=k8" DISTDIR="/usr/distfiles" FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="LV EN" MAKEOPTS="-j3" PKGDIR="/var/portage/pkgdir" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="7zip X acl acpi alsa amd64 berkdb bzip2 cli cracklib crypt cups cxx dri gdbm gpm iconv ldap logrotate mmx modules mudflap multilib ncurses nfs nls nptl nptlonly openmp pam pcre pppd quotas readline session snmp sse sse2 ssl sysfs tcpd threads truetype unicode xml xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="LV EN" MISDN_CARDS="hfcmulti" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS =========== >>> Unpacking source... >>> Unpacking DBD-InterBase-0.48.tar.gz to /var/tmp/portage/dev-perl/DBD-InterBase-0.48/work * Applying disable-test.patch ... [ ok ] >>> Source unpacked in /var/tmp/portage/dev-perl/DBD-InterBase-0.48/work >>> Preparing source in /var/tmp/portage/dev-perl/DBD-InterBase-0.48/work/DBD-InterBase-0.48 ... >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-perl/DBD-InterBase-0.48/work/DBD-InterBase-0.48 ... * Using ExtUtils::MakeMaker * perl Makefile.PL PREFIX=/usr INSTALLDIRS=vendor INSTALLMAN3DIR=none DESTDIR=/var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/ InterBase/Firebird bin directory : [/usr/bin] /usr/bin InterBase/Firebird include directory : [/usr/include] /usr/include InterBase/Firebird lib directory : [/usr/lib] /usr/lib Checking if your kit is complete... Looks good Using DBI 1.615 (for perl 5.012002 on x86_64-linux) installed in /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBI/ Writing Makefile for DBD::InterBase >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-perl/DBD-InterBase-0.48/work/DBD-InterBase-0.48 ... * emake OTHERLDFLAGS=-Wl,-O1 -Wl,--as-needed make -j3 'OTHERLDFLAGS=-Wl,-O1 -Wl,--as-needed' /usr/bin/perl5.12.2 -p -e "s/~DRIVER~/InterBase/g" /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBI/Driver.xst > InterBase.xsi x86_64-pc-linux-gnu-gcc -c -I"/usr/include" -I"/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBI" -Wall -fno-strict-aliasing -O2 -pipe -fforce-addr -march=k8 -DVERSION=\"0.48\" -DXS_VERSION=\"0.48\" -fPIC "-I/usr/lib64/perl5/5.12.2/x86_64-linux/CORE" dbdimp.c Running Mkbootstrap for DBD::InterBase () cp lib/DBD/InterBase/TypeInfo.pm blib/lib/DBD/InterBase/TypeInfo.pm cp InterBase.pm blib/lib/DBD/InterBase.pm cp lib/DBD/InterBase/GetInfo.pm blib/lib/DBD/InterBase/GetInfo.pm chmod 644 InterBase.bs /usr/bin/perl5.12.2 /usr/lib64/perl5/vendor_perl/5.12.2/ExtUtils/xsubpp -noprototypes -typemap /usr/lib64/perl5/5.12.2/ExtUtils/typemap -typemap typemap InterBase.xs > InterBase.xsc && mv InterBase.xsc InterBase.c cp InterBase.bs blib/arch/auto/DBD/InterBase/InterBase.bs chmod 644 blib/arch/auto/DBD/InterBase/InterBase.bs x86_64-pc-linux-gnu-gcc -c -I"/usr/include" -I"/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBI" -Wall -fno-strict-aliasing -O2 -pipe -fforce-addr -march=k8 -DVERSION=\"0.48\" -DXS_VERSION=\"0.48\" -fPIC "-I/usr/lib64/perl5/5.12.2/x86_64-linux/CORE" InterBase.c dbdimp.c: In function 'create_cursor_name': dbdimp.c:60: warning: '0' flag ignored with precision and '%x' printf format dbdimp.c: In function 'ib_st_fetch': dbdimp.c:1194: warning: format '%d' expects type 'int', but argument 3 has type 'ISC_STATUS' dbdimp.c:1459: warning: format '%04d' expects type 'int', but argument 9 has type 'long int' dbdimp.c:1474: warning: format '%04d' expects type 'int', but argument 6 has type 'long int' dbdimp.c:1532: warning: initialization makes integer from pointer without a cast dbdimp.c:1549: warning: cast from pointer to integer of different size dbdimp.c: In function 'ib_discon_all': dbdimp.c:1991: warning: statement with no effect dbdimp.c: In function 'ib_blob_write': dbdimp.c:2003: warning: initialization makes integer from pointer without a cast dbdimp.c:2042: warning: format '%d' expects type 'int', but argument 3 has type 'long int' dbdimp.c: In function 'ib_fill_isqlda': dbdimp.c:2103: warning: format '%ld' expects type 'long int', but argument 5 has type 'int' dbdimp.c:2221: warning: format '%d' expects type 'int', but argument 3 has type 'STRLEN' dbdimp.c:2221: warning: format '%d' expects type 'int', but argument 4 has type 'long unsigned int' dbdimp.c:2275: warning: format '%d' expects type 'int', but argument 3 has type 'STRLEN' dbdimp.c:2275: warning: format '%d' expects type 'int', but argument 4 has type 'long unsigned int' InterBase.xs: In function 'XS_DBD__InterBase__db_ib_wait_event': InterBase.xs:1329: warning: format '%ld' expects type 'long int', but argument 4 has type 'ISC_ULONG' rm -f blib/arch/auto/DBD/InterBase/InterBase.so LD_RUN_PATH="/usr/lib" x86_64-pc-linux-gnu-gcc -shared -O2 -pipe -fforce-addr -march=k8 -fstack-protector -Wl,-O1 -Wl,--as-needed InterBase.o dbdimp.o -Wl,-O1 -Wl,--as-needed -o blib/arch/auto/DBD/InterBase/InterBase.so \ -L/usr/lib -lfbclient -ldl \ chmod 755 blib/arch/auto/DBD/InterBase/InterBase.so >>> Source compiled. >>> Test phase [not enabled]: dev-perl/DBD-InterBase-0.48 >>> Install DBD-InterBase-0.48 into /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/ category dev-perl make -j3 pure_install Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Installing /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/InterBase/InterBase.so Installing /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/InterBase/InterBase.bs Installing /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase.pm Installing /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase/TypeInfo.pm Installing /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase/GetInfo.pm >>> Completed installing DBD-InterBase-0.48 into /var/tmp/portage/dev-perl/DBD-InterBase-0.48/image/ strip: x86_64-pc-linux-gnu-strip --strip-unneeded -R .comment usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/InterBase/InterBase.so >>> Installing (1 of 1) dev-perl/DBD-InterBase-0.48 * checking 6 files for package collisions --- /usr/ --- /usr/share/ --- /usr/share/doc/ >>> /usr/share/doc/DBD-InterBase-0.48/ >>> /usr/share/doc/DBD-InterBase-0.48/README.bz2 >>> /usr/share/doc/DBD-InterBase-0.48/Changes.bz2 --- /usr/lib64/ --- /usr/lib64/perl5/ --- /usr/lib64/perl5/vendor_perl/ --- /usr/lib64/perl5/vendor_perl/5.12.2/ --- /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/ --- /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/ --- /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/ >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/InterBase/ >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/auto/DBD/InterBase/InterBase.so --- /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/ >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase/ >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase/TypeInfo.pm >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase/GetInfo.pm >>> /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux/DBD/InterBase.pm >>> Recording dev-perl/DBD-InterBase in "world" favorites file...
Is anyone still interested in this? If yes, please say so here and now!
(In reply to Andreas K. Hüttel from comment #4) > Is anyone still interested in this? If yes, please say so here and now! Yeap. I am still using it.
Created attachment 390618 [details] cleaned-up ebuild
OK I tried to get this working, but just plain could not get it to buidl against Perl 5.20. So that's a NAK from here.