Merge bk://openembedded@openembedded.bkbits.net/packages
authorBruno Randolf <br1@subnet.at>
Wed, 22 Sep 2004 13:43:53 +0000 (13:43 +0000)
committerBruno Randolf <br1@subnet.at>
Wed, 22 Sep 2004 13:43:53 +0000 (13:43 +0000)
into null.(none):/data/mtx/oe/oe.write/packages

2004/09/22 15:41:59+02:00 (none)!br1
perl build for mipsel. package all modules in seperate ipkgs.

BKrev: 41518199E61VILo1bjmTICJhj4-fBg

classes/package.oeclass
perl/perl-5.8.3/Makefile.SH.patch
perl/perl-5.8.3/config.sh-mipsel-linux [new file with mode: 0644]
perl/perl-5.8.3/libperl-5.8.3-create-libperl-soname.patch [new file with mode: 0644]
perl/perl_5.8.3.oe
site/mipsel-linux

index cdebea9..cb87267 100644 (file)
@@ -1,7 +1,7 @@
 def legitimize_package_name(s):
-       return s.lower().replace('_', '-').replace('@', '+').replace(',', '+')
+       return s.lower().replace('_', '-').replace('@', '+').replace(',', '+').replace('/', '-')
 
-def do_split_packages(d, root, file_regex, output_pattern, description, postinst=None, recursive=False, hook=None, extra_depends=None, aux_files_pattern=None, postrm=None, allow_dirs=False, prepend=False):
+def do_split_packages(d, root, file_regex, output_pattern, description, postinst=None, recursive=False, hook=None, extra_depends=None, aux_files_pattern=None, postrm=None, allow_dirs=False, prepend=False, match_path=False):
        import os, os.path, oe
 
        dvar = oe.data.getVar('D', d, 1)
@@ -33,7 +33,11 @@ def do_split_packages(d, root, file_regex, output_pattern, description, postinst
 
        for o in objs:
                import re, stat
-               m = re.match(file_regex, os.path.basename(o))
+               if match_path:
+                       m = re.match(file_regex, o)
+               else:
+                       m = re.match(file_regex, os.path.basename(o))
+               
                if not m:
                        continue
                f = os.path.join(dvar + root, o)
index e69de29..35a4e6d 100644 (file)
@@ -0,0 +1,298 @@
+*** ./Makefile.SH      Wed Aug  4 12:16:15 2004
+--- ./Makefile.SH.patch        Wed Aug  4 14:03:42 2004
+***************
+*** 110,127 ****
+           # INSTALL file, under "Building a shared perl library".
+           # If there is no pre-existing $libperl, we don't need
+           # to do anything further.
+!          if test -f $archlib/CORE/$libperl; then
+!              rm -f preload
+!              cat <<'EOT' > preload
+! #! /bin/sh
+! lib=$1
+! shift
+! test -r $lib && export LD_PRELOAD="$lib $LD_PRELOAD"
+! exec "$@"
+! EOT
+!              chmod 755 preload
+!              ldlibpth="$ldlibpth `pwd`/preload `pwd`/$libperl"
+!          fi
+           ;;
+       os390)  test -f /bin/env && ldlibpth="/bin/env $ldlibpth"
+               ;;
+--- 110,116 ----
+           # INSTALL file, under "Building a shared perl library".
+           # If there is no pre-existing $libperl, we don't need
+           # to do anything further.
+!          echo linux libraries overwritten by cross-compile patches
+           ;;
+       os390)  test -f /bin/env && ldlibpth="/bin/env $ldlibpth"
+               ;;
+***************
+*** 349,357 ****
+  .c.s:
+       $(CCCMDSRC) -S $*.c
+  
+! all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
+!      @echo " ";
+!      @echo " Everything is up to date. Type '$(MAKE) test' to run test suite."
+  
+  .PHONY: all compile translators utilities
+  
+--- 338,358 ----
+  .c.s:
+       $(CCCMDSRC) -S $*.c
+  
+! #all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
+! #    @echo " ";
+! #    @echo " Everything is up to date. Type '$(MAKE) test' to run test suite."
+! 
+! all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT)
+!      mv miniperl miniperl-cross
+!      ln -s hostperl  miniperl
+! 
+! more: extra.pods $(private) $(public)
+! 
+! more2: $(dynamic_ext)
+! 
+! more3: $(nonxs_ext)
+! 
+! more4: extras.make
+  
+  .PHONY: all compile translators utilities
+  
+***************
+*** 361,370 ****
+       cd x2p; $(MAKE) compile;
+       cd pod; $(MAKE) compile;
+  
+! translators: miniperl$(EXE_EXT) lib/Config.pm FORCE
+       @echo " "; echo "       Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all
+  
+! utilities:   miniperl$(EXE_EXT) lib/Config.pm $(plextract) lib/lib.pm FORCE
+       @echo " "; echo "       Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all
+  
+  
+--- 362,371 ----
+       cd x2p; $(MAKE) compile;
+       cd pod; $(MAKE) compile;
+  
+! translators: lib/Config.pm FORCE
+       @echo " "; echo "       Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all
+  
+! utilities:   lib/Config.pm $(plextract) lib/lib.pm FORCE
+       @echo " "; echo "       Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all
+  
+  
+***************
+*** 541,547 ****
+       $(CC) -o miniperl $(CLDFLAGS) \
+           `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
+           miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
+!      $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+  !NO!SUBS!
+               ;;
+       beos*|next4*)
+--- 542,548 ----
+       $(CC) -o miniperl $(CLDFLAGS) \
+           `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
+           miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
+! #    $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+  !NO!SUBS!
+               ;;
+       beos*|next4*)
+***************
+*** 549,555 ****
+  miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT)
+       $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
+           miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
+!      $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+  !NO!SUBS!
+               ;;
+       darwin*)
+--- 550,556 ----
+  miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT)
+       $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
+           miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
+! #    $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+  !NO!SUBS!
+               ;;
+       darwin*)
+***************
+*** 716,722 ****
+  # We need to autosplit in two steps because VOS can't handle so many args
+  #
+  .PHONY: preplibrary
+! preplibrary: miniperl$(EXE_EXT) lib/Config.pm lib/lib.pm $(PREPLIBRARY_LIBPERL)
+       @sh ./makedir lib/auto
+       @echo " AutoSplitting perl library"
+       $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
+--- 717,723 ----
+  # We need to autosplit in two steps because VOS can't handle so many args
+  #
+  .PHONY: preplibrary
+! preplibrary: lib/Config.pm lib/lib.pm $(PREPLIBRARY_LIBPERL)
+       @sh ./makedir lib/auto
+       @echo " AutoSplitting perl library"
+       $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
+***************
+*** 728,738 ****
+  # Take care to avoid modifying lib/Config.pm without reason
+  # (If trying to create a new port and having problems with the configpm script,
+  # try 'make minitest' and/or commenting out the tests at the end of configpm.)
+! lib/Config.pm: config.sh miniperl$(EXE_EXT) configpm Porting/Glossary
+       $(LDLIBPTH) ./miniperl -Ilib configpm configpm.tmp
+       sh mv-if-diff configpm.tmp $@
+  
+! lib/ExtUtils/Miniperl.pm: miniperlmain.c miniperl$(EXE_EXT) minimod.pl lib/Config.pm
+       $(LDLIBPTH) ./miniperl minimod.pl > minimod.tmp
+       sh mv-if-diff minimod.tmp $@
+       -touch lib/ExtUtils/Miniperl.pm
+--- 729,739 ----
+  # Take care to avoid modifying lib/Config.pm without reason
+  # (If trying to create a new port and having problems with the configpm script,
+  # try 'make minitest' and/or commenting out the tests at the end of configpm.)
+! lib/Config.pm: config.sh configpm Porting/Glossary
+       $(LDLIBPTH) ./miniperl -Ilib configpm configpm.tmp
+       sh mv-if-diff configpm.tmp $@
+  
+! lib/ExtUtils/Miniperl.pm: miniperlmain.c minimod.pl lib/Config.pm
+       $(LDLIBPTH) ./miniperl minimod.pl > minimod.tmp
+       sh mv-if-diff minimod.tmp $@
+       -touch lib/ExtUtils/Miniperl.pm
+***************
+*** 740,757 ****
+  lib/re.pm: ext/re/re.pm
+       cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
+  
+! $(plextract):        miniperl$(EXE_EXT) lib/Config.pm x2p/s2p
+       @-rm -f $@
+       $(LDLIBPTH) ./miniperl -Ilib $@.PL
+  
+! x2p/s2p: miniperl$(EXE_EXT) lib/Config.pm x2p/s2p.PL
+       cd x2p; $(LDLIBPTH) $(MAKE) s2p
+  
+! lib/lib.pm:  miniperl$(EXE_EXT) lib/Config.pm
+       @-rm -f $@
+       $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
+  
+! extra.pods: miniperl$(EXE_EXT)
+       -@test -f extra.pods && rm -f `cat extra.pods`
+       -@rm -f extra.pods
+       -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
+--- 741,758 ----
+  lib/re.pm: ext/re/re.pm
+       cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
+  
+! $(plextract):        lib/Config.pm x2p/s2p
+       @-rm -f $@
+       $(LDLIBPTH) ./miniperl -Ilib $@.PL
+  
+! x2p/s2p: lib/Config.pm x2p/s2p.PL
+       cd x2p; $(LDLIBPTH) $(MAKE) s2p
+  
+! lib/lib.pm:  lib/Config.pm
+       @-rm -f $@
+       $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
+  
+! extra.pods: 
+       -@test -f extra.pods && rm -f `cat extra.pods`
+       -@rm -f extra.pods
+       -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
+***************
+*** 798,815 ****
+  INSTALL_DEPENDENCE = all
+  
+  install.perl:        $(INSTALL_DEPENDENCE) installperl
+!      if [ -n "$(COMPILE)" ]; \
+!      then \
+!              cd utils; $(MAKE) compile; \
+!              cd ../x2p; $(MAKE) compile; \
+!              cd ../pod; $(MAKE) compile; \
+!      else :; \
+!      fi
+!      $(LDLIBPTH) ./perl installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
+!      $(MAKE) extras.install
+! 
+! install.man: all installman
+!      $(LDLIBPTH) ./perl installman --destdir=$(DESTDIR) $(INSTALLFLAGS)
+  
+  # XXX Experimental. Hardwired values, but useful for testing.
+  # Eventually Configure could ask for some of these values.
+--- 799,805 ----
+  INSTALL_DEPENDENCE = all
+  
+  install.perl:        $(INSTALL_DEPENDENCE) installperl
+!      hostperl -Ifake_config_library -MConfig installperl $(INSTALLFLAGS) $(STRIPFLAGS)
+  
+  # XXX Experimental. Hardwired values, but useful for testing.
+  # Eventually Configure could ask for some of these values.
+***************
+*** 925,940 ****
+  #
+  # DynaLoader may be needed for extensions that use Makefile.PL.
+  
+! $(DYNALOADER):       miniperl$(EXE_EXT) preplibrary FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! d_dummy $(dynamic_ext):      miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext dynamic $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! s_dummy $(static_ext):       miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! n_dummy $(nonxs_ext):        miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+  .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \
+--- 915,930 ----
+  #
+  # DynaLoader may be needed for extensions that use Makefile.PL.
+  
+! $(DYNALOADER):       preplibrary FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! d_dummy $(dynamic_ext):      preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext dynamic $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! s_dummy $(static_ext):       preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+! n_dummy $(nonxs_ext):        preplibrary $(DYNALOADER) FORCE
+       @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
+  
+  .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \
+***************
+*** 1074,1080 ****
+  
+  test_prep_pre: preplibrary utilities $(nonxs_ext)
+  
+! test_prep: test_prep_pre miniperl$(EXE_EXT) perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL)
+       PERL=./perl $(MAKE) _test_prep
+  
+  _test_tty:
+--- 1064,1070 ----
+  
+  test_prep_pre: preplibrary utilities $(nonxs_ext)
+  
+! test_prep: test_prep_pre perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL)
+       PERL=./perl $(MAKE) _test_prep
+  
+  _test_tty:
+***************
+*** 1167,1173 ****
+  
+  # Can't depend on lib/Config.pm because that might be where miniperl
+  # is crashing.
+! minitest: miniperl$(EXE_EXT) lib/re.pm
+       -@test -f lib/lib.pm && test -f lib/Config.pm || \
+         $(MAKE) lib/Config.pm lib/lib.pm
+       @echo " "
+--- 1157,1163 ----
+  
+  # Can't depend on lib/Config.pm because that might be where miniperl
+  # is crashing.
+! minitest: lib/re.pm
+       -@test -f lib/lib.pm && test -f lib/Config.pm || \
+         $(MAKE) lib/Config.pm lib/lib.pm
+       @echo " "
diff --git a/perl/perl-5.8.3/config.sh-mipsel-linux b/perl/perl-5.8.3/config.sh-mipsel-linux
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/perl/perl-5.8.3/libperl-5.8.3-create-libperl-soname.patch b/perl/perl-5.8.3/libperl-5.8.3-create-libperl-soname.patch
new file mode 100644 (file)
index 0000000..e69de29
index cb5461e..f6d2e1c 100644 (file)
@@ -5,9 +5,9 @@ DEPENDS = "db3 perl-native"
 SRC_URI = "http://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
        file://Makefile.patch;patch=1 \
        file://config.sh-arm-linux.patch;patch=1 \
-       file://Makefile.SH.patch "
-
-FILES_${PN} += "${libdir}/perl5"
+       file://libperl-5.8.3-create-libperl-soname.patch;patch=1;pnum=0 \
+       file://Makefile.SH.patch \
+       file://config.sh-mipsel-linux"
 
 HOSTPERL=${STAGING_BINDIR}/perl${PV}
 
@@ -17,6 +17,12 @@ do_configure() {
        cd Cross
        rm Makefile.SH.patch
        cp ${WORKDIR}/Makefile.SH.patch .
+       cp ${WORKDIR}/config.sh-mipsel-linux .
+       cat config.sh-${TARGET_ARCH}-${TARGET_OS} | sed -e's,./install_me_here,${D},g' > config.sh-${TARGET_ARCH}-${TARGET_OS}.new
+       mv config.sh-${TARGET_ARCH}-${TARGET_OS}.new config.sh-${TARGET_ARCH}-${TARGET_OS}
+       rm -f config
+       echo "ARCH = ${TARGET_ARCH}" > config
+       echo "OS = ${TARGET_OS}" >> config
        oe_runmake patch 
 }
 
@@ -26,10 +32,12 @@ do_compile() {
 }
 
 do_install() {
-       rm -rf install_me_here
        make install
-       mv install_me_here/* ${D}
-       rmdir install_me_here
+       cd ${D}/usr/bin/
+       rm perl
+       ln -s perl${PV} perl
+       cd ${D}/usr/lib
+       mv ${D}/usr/lib/perl5/5.8.3/CORE/libperl.so.${PV} .
 }
 
 do_stage() {
@@ -37,3 +45,15 @@ do_stage() {
        install config.sh ${STAGING_DIR}/${HOST_SYS}/perl/
 }
 
+python populate_packages_prepend () {
+       libdir = oe.data.expand('${libdir}/perl5/${PV}', d)
+       do_split_packages(d, libdir, 'auto/(.*)/', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True)
+       do_split_packages(d, libdir, '(.*)\.(pm|pl)', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True)
+}
+
+PACKAGES = "perl perl-misc perl-lib perl-dev perl-pod"
+FILES_${PN} = "/usr/bin/perl /usr/bin/perl${PV}"
+FILES_${PN}-lib = "/usr/lib/libperl.so*"
+FILES_${PN}-dev = "/usr/lib/perl5/5.8.3/CORE/"
+FILES_${PN}-pod = "/usr/lib/perl5/${PV}/pod"
+FILES_perl-misc = "/usr/bin/"
index e911827..c90671b 100644 (file)
@@ -78,3 +78,20 @@ wi_cv_unix_domain_sockets=${wi_cv_unix_domain_sockets=yes}
 # rp-pppoe
 rpppoe_cv_pack_bitfields=${rpppoe_cv_pack_bitfields=rev}
 
+# db3
+db_cv_align_t=${db_cv_align_t='unsigned long long'}
+db_cv_alignp_t=${db_cv_alignp_t='unsigned long'}
+db_cv_mutex=${db_cv_mutex=no}
+db_cv_posixmutexes=${db_cv_posixmutexes=no}
+db_cv_uimutexes=${db_cv_uimutexes=no}
+db_cv_fcntl_f_setfd=${db_cv_fcntl_f_setfd=yes}
+db_cv_sprintf_count=${db_cv_sprintf_count=yes}
+db_cv_path_ar=${db_cv_path_ar=/usr/bin/ar}
+db_cv_path_chmod=${db_cv_path_chmod=/bin/chmod}
+db_cv_path_cp=${db_cv_path_cp=/bin/cp}
+db_cv_path_ln=${db_cv_path_ln=/bin/ln}
+db_cv_path_mkdir=${db_cv_path_mkdir=/bin/mkdir}
+db_cv_path_ranlib=${db_cv_path_ranlib=/usr/bin/ranlib}
+db_cv_path_rm=${db_cv_path_rm=/bin/rm}
+db_cv_path_sh=${db_cv_path_sh=/bin/sh}
+db_cv_path_strip=${db_cv_path_strip=/usr/bin/strip}
\ No newline at end of file