All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v11 1/9] host-qemu: new package
@ 2012-10-19 13:13 Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 2/9] perl: " Francois Perrad
                   ` (8 more replies)
  0 siblings, 9 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

only user mode for the current target architecture

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/qemu/qemu.mk |   82 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)
 create mode 100644 package/qemu/qemu.mk

diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
new file mode 100644
index 0000000..de72e04
--- /dev/null
+++ b/package/qemu/qemu.mk
@@ -0,0 +1,82 @@
+#############################################################
+#
+# qemu
+#
+#############################################################
+
+QEMU_VERSION = 1.2.0
+QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.bz2
+QEMU_SITE = http://wiki.qemu.org/download
+
+#       BR ARCH         qemu
+#       -------         ----
+#       arm             arm
+#       armeb           armeb
+#       avr32           not supported
+#       bfin            not supported
+#       i386            i386
+#       i486            i386
+#       i586            i386
+#       i686            i386
+#       x86_64          x86_64
+#       m68k            m68k
+#       microblaze      microblaze
+#       mips            mips
+#       mipsel          mipsel
+#       mips64          ?
+#       mips64el        ?
+#       powerpc         ppc
+#       sh2             not supported
+#       sh2a            not supported
+#       sh3             not supported
+#       sh3eb           not supported
+#       sh4             sh4
+#       sh4eb           sh4eb
+#       sh4a            ?
+#       sh4aeb          ?
+#       sh64            not supported
+#       sparc           sparc
+
+QEMU_ARCH = $(ARCH)
+ifeq ($(QEMU_ARCH),i486)
+    QEMU_ARCH = i386
+endif
+ifeq ($(QEMU_ARCH),i586)
+    QEMU_ARCH = i386
+endif
+ifeq ($(QEMU_ARCH),i686)
+    QEMU_ARCH = i386
+endif
+ifeq ($(QEMU_ARCH),powerpc)
+    QEMU_ARCH = ppc
+endif
+HOST_QEMU_TARGETS=$(QEMU_ARCH)-linux-user
+
+define HOST_QEMU_CONFIGURE_CMDS
+	(cd $(@D); ./configure                          \
+		--target-list="$(HOST_QEMU_TARGETS)"    \
+		--prefix="$(HOST_DIR)/usr"              \
+		--interp-prefix=$(STAGING_DIR)          \
+		--cc="$(HOSTCC)"                        \
+		--host-cc="$(HOSTCC)"                   \
+		--extra-cflags="$(HOST_CFLAGS)"         \
+		--extra-ldflags="$(HOST_LDFLAGS)"       \
+	)
+endef
+
+define HOST_QEMU_BUILD_CMDS
+	$(MAKE) -C $(@D) all
+endef
+
+define HOST_QEMU_INSTALL_CMDS
+	$(MAKE) -C $(@D) install
+endef
+
+define HOST_QEMU_CLEAN_CMDS
+	$(MAKE) -C $(@D) clean
+endef
+
+$(eval $(host-generic-package))
+
+# variable used by other packages
+QEMU_USER = $(HOST_DIR)/usr/bin/qemu-$(QEMU_ARCH)
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-30 20:20   ` Bernd Kuhls
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 3/9] perl: add DB_File Francois Perrad
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/Config.in                      |    1 +
 package/perl/Config.in                 |   18 ++++++
 package/perl/perl-configure-qemu.patch |   53 +++++++++++++++++
 package/perl/perl-make-ext.patch       |   24 ++++++++
 package/perl/perl-mkppport.patch       |   37 ++++++++++++
 package/perl/perl.mk                   |   99 ++++++++++++++++++++++++++++++++
 6 files changed, 232 insertions(+)
 create mode 100644 package/perl/Config.in
 create mode 100644 package/perl/perl-configure-qemu.patch
 create mode 100644 package/perl/perl-make-ext.patch
 create mode 100644 package/perl/perl-mkppport.patch
 create mode 100644 package/perl/perl.mk

diff --git a/package/Config.in b/package/Config.in
index f308de7..00a79ab 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -262,6 +262,7 @@ source "package/wsapi/Config.in"
 source "package/xavante/Config.in"
 endmenu
 endif
+source "package/perl/Config.in"
 source "package/microperl/Config.in"
 source "package/php/Config.in"
 source "package/python/Config.in"
diff --git a/package/perl/Config.in b/package/perl/Config.in
new file mode 100644
index 0000000..0a41a97
--- /dev/null
+++ b/package/perl/Config.in
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_PERL
+	bool "perl"
+	depends on !BR2_avr32
+	depends on !BR2_bfin
+	depends on !BR2_sh2
+	depends on !BR2_sh2a
+	depends on !BR2_sh3
+	depends on !BR2_sh3eb
+	depends on !BR2_sh64
+	help
+	  Larry Wall's Practical Extraction and Report Language
+	  An interpreted scripting language, known among some as "Unix's Swiss
+	  Army Chainsaw".
+
+	  http://www.perl.org/
+
+comment "perl requires an architecture supported by qemu"
+	depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64
diff --git a/package/perl/perl-configure-qemu.patch b/package/perl/perl-configure-qemu.patch
new file mode 100644
index 0000000..c2d6b92
--- /dev/null
+++ b/package/perl/perl-configure-qemu.patch
@@ -0,0 +1,53 @@
+Add qemu support
+
+see https://rt.perl.org/rt3//Public/Bug/Display.html?id=114798
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/Configure
+===================================================================
+--- a/Configure
++++ b/Configure
+@@ -2837,6 +2837,9 @@
+             ;;
+         *)  echo "Using usrinc $usrinc." >&4 ;;
+ 	esac
++	case "$targetrun" in
++	*qemu*) targethost=dummy ;;
++	esac
+ 	case "$targethost" in
+ 	'') echo "Targethost not defined." >&4; croak=y ;;
+         *)  echo "Using targethost $targethost." >&4
+@@ -2868,7 +2871,7 @@
+ 	case "$targetfrom" in
+ 	'') targetfrom=scp ;;
+ 	esac
+-    	run=$run-$targetrun
++    	run=$run-`basename $targetrun`
+     	to=$to-$targetto
+     	from=$from-$targetfrom
+ 	case "$targetdir" in
+@@ -2908,6 +2911,14 @@
+ $targetrun -l $targetuser $targethost "cd \$cwd && ./\$exe \$@"
+ EOF
+ 	    ;;
++	*qemu*)
++	    to=:
++	    from=:
++	    cat >$run <<EOF
++#!/bin/sh
++$targetrun -L $qemulib "\$@"
++EOF
++	    ;;
+ 	*)  echo "Unknown targetrun '$targetrun'" >&4
+ 	    exit 1
+ 	    ;;
+@@ -5048,7 +5059,7 @@
+ echo " ";
+ echo "Checking if your compiler accepts $flag" 2>&1;
+ echo "int main(void) { return 0; }" > gcctest.c;
+-if $cc -O2 $flag -o gcctest gcctest.c 2>gcctest.out && ./gcctest; then
++if $cc -O2 $flag -o gcctest gcctest.c 2>gcctest.out && $run ./gcctest; then
+     echo "Yes, it does." 2>&1;
+     if $test -s gcctest.out ; then
+         echo "But your platform does not like it:";
diff --git a/package/perl/perl-make-ext.patch b/package/perl/perl-make-ext.patch
new file mode 100644
index 0000000..e0195e7
--- /dev/null
+++ b/package/perl/perl-make-ext.patch
@@ -0,0 +1,24 @@
+Don't use RUN with make (only for perl)
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/make_ext.pl
+===================================================================
+--- a/make_ext.pl
++++ b/make_ext.pl
+@@ -458,11 +458,13 @@
+ 	# Give makefile an opportunity to rewrite itself.
+ 	# reassure users that life goes on...
+ 	my @args = ('config', @$pass_through);
+-	system(@run, @make, @args) and print "@run @make @args failed, continuing anyway...\n";
++#	system(@run, @make, @args) and print "@run @make @args failed, continuing anyway...\n";
++	system(@make, @args) and print "@make @args failed, continuing anyway...\n";
+     }
+     my @targ = ($target, @$pass_through);
+     print "Making $target in $ext_dir\n at run @make @targ\n";
+-    my $code = system(@run, @make, @targ);
++#    my $code = system(@run, @make, @targ);
++    my $code = system(@make, @targ);
+     die "Unsuccessful make($ext_dir): code=$code" if $code != 0;
+ 
+     chdir $return_dir || die "Cannot cd to $return_dir: $!";
diff --git a/package/perl/perl-mkppport.patch b/package/perl/perl-mkppport.patch
new file mode 100644
index 0000000..97f27a2
--- /dev/null
+++ b/package/perl/perl-mkppport.patch
@@ -0,0 +1,37 @@
+Add RUN
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/mkppport
+===================================================================
+--- a/mkppport
++++ b/mkppport
+@@ -1,6 +1,7 @@
+ use strict;
+ use warnings;
+ 
++use Config;
+ use Getopt::Long;
+ use File::Spec;
+ use File::Compare qw( compare );
+@@ -136,14 +137,18 @@
+ #----------------------------------------------
+ sub run
+ {
++  my @run = $Config{run};
++  @run = () if not defined $run[0] or $run[0] eq '';
+   my @args = ("-I" . File::Spec->catdir((File::Spec->updir) x 2, 'lib'), @_);
+   my $run = $perl =~ m/\s/ ? qq("$perl") : $perl;
+   for (@args) {
+     $_ = qq("$_") if $^O eq 'VMS' && /^[^"]/;
+     $run .= " $_";
+   }
+-  print "running $run\n";
+-  system $run and die "$run failed: $?\n";
++#  print "running $run\n";
++#  system $run and die "$run failed: $?\n";
++  print "running ", join(' ', @run, $run), "\n";
++  system join(' ', @run, $run) and die "@run $run failed: $?\n";
+ }
+ 
+ __END__
diff --git a/package/perl/perl.mk b/package/perl/perl.mk
new file mode 100644
index 0000000..7ac1aed
--- /dev/null
+++ b/package/perl/perl.mk
@@ -0,0 +1,99 @@
+#############################################################
+#
+# perl
+#
+#############################################################
+
+PERL_VERSION_MAJOR = 16
+PERL_VERSION = 5.$(PERL_VERSION_MAJOR).1
+PERL_SITE = http://www.cpan.org/src/5.0
+PERL_SOURCE = perl-$(PERL_VERSION).tar.bz2
+PERL_LICENSE = Artistic
+PERL_LICENSE_FILES = Artistic
+PERL_INSTALL_STAGING = YES
+PERL_DEPENDENCIES = host-qemu
+
+PERL_CONF_OPT = -des \
+		-Dusecrosscompile \
+		-Dtargetrun=$(QEMU_USER) \
+		-Dqemulib=$(STAGING_DIR) \
+		-Dar="$(TARGET_AR)" \
+		-Dcc="$(TARGET_CC)" \
+		-Dcpp="$(TARGET_CC)" \
+		-Dld="$(TARGET_LD)" \
+		-Dnm="$(TARGET_NM)" \
+		-Dranlib="$(TARGET_RANLIB)" \
+		-Dccflags="$(TARGET_CFLAGS)" \
+		-Dldflags="$(TARGET_LDFLAGS) -lgcc_s -lm" \
+		-Dlddlflags="-shared" \
+		-Dlibc=$(STAGING_DIR)/lib/libc.so \
+		-Duseshrplib \
+		-Dprefix=/usr \
+		-Uoptimize
+
+ifeq ($(shell expr $(PERL_VERSION_MAJOR) % 2), 1)
+    PERL_CONF_OPT += -Dusedevel
+endif
+
+ifneq ($(BR2_LARGEFILE),y)
+    PERL_CONF_OPT += -Uuselargefiles
+endif
+
+define PERL_CONFIGURE_CMDS
+	rm -f $(@D)/config.sh
+	(cd $(@D); ./Configure $(PERL_CONF_OPT))
+	echo "# patched values"                                 >>$(@D)/config.sh
+	$(SED) '/^myarchname=/d' \
+		-e '/^mydomain=/d' \
+		-e '/^myhostname=/d' \
+		-e '/^myuname=/d' \
+		-e '/^osname=/d' \
+		-e '/^osvers=/d' \
+		-e '/^perladmin=/d' \
+		$(@D)/config.sh
+	echo "myarchname='$(GNU_TARGET_NAME)'"                  >>$(@D)/config.sh
+	echo "mydomain=''"                                      >>$(@D)/config.sh
+	echo "myhostname='$(BR2_TARGET_GENERIC_HOSTNAME)'"      >>$(@D)/config.sh
+	echo "myuname='Buildroot $(BR2_VERSION_FULL)'"          >>$(@D)/config.sh
+	echo "osname='linux'"                                   >>$(@D)/config.sh
+	echo "osvers='$(BR2_LINUX_KERNEL_VERSION)'"             >>$(@D)/config.sh
+	echo "perladmin='root'"                                 >>$(@D)/config.sh
+	(cd $(@D); ./Configure -S)
+	cp $(@D)/config.h $(@D)/xconfig.h
+	$(SED) 's/UNKNOWN-/Buildroot $(BR2_VERSION_FULL) /' $(@D)/patchlevel.h
+endef
+
+define PERL_BUILD_CMDS
+	echo "#!/bin/sh"                                > $(@D)/Cross/miniperl
+	echo "$(QEMU_USER) $(@D)/miniperl \"\$$@\""     >>$(@D)/Cross/miniperl
+	chmod +x $(@D)/Cross/miniperl
+	PERL_MM_OPT="PERL=$(@D)/Cross/miniperl" \
+		$(MAKE) -C $(@D) all
+endef
+
+define PERL_INSTALL_STAGING_CMDS
+	$(MAKE) INSTALL_DEPENDENCE= \
+		INSTALLFLAGS= \
+		DESTDIR="$(STAGING_DIR)" \
+		-C $(@D) install.perl
+endef
+
+PERL_RUN_PERL = $(QEMU_USER) $(@D)/perl -Ilib
+PERL_ARCHNAME = $(shell $(PERL_RUN_PERL) -MConfig -e "print Config->{archname}")
+PERL_LIB = $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)
+PERL_ARCHLIB = $(PERL_LIB)/$(PERL_ARCHNAME)
+
+define PERL_INSTALL_TARGET_CMDS
+	$(MAKE) INSTALL_DEPENDENCE= \
+		INSTALLFLAGS=-p \
+		DESTDIR="$(TARGET_DIR)" \
+		-C $(@D) install.perl
+	rm -f $(PERL_ARCHLIB)/CORE/*.h
+	find $(PERL_ARCHLIB) -type f -name *.bs -exec rm -f {} \;
+endef
+
+define PERL_CLEAN_CMDS
+	-$(MAKE) -C $(@D) clean
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 3/9] perl: add DB_File
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 2/9] perl: " Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 4/9] gdbm: new package Francois Perrad
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/perl/Config.in |   10 ++++++++++
 package/perl/perl.mk   |    4 ++++
 2 files changed, 14 insertions(+)

diff --git a/package/perl/Config.in b/package/perl/Config.in
index 0a41a97..6cb89f0 100644
--- a/package/perl/Config.in
+++ b/package/perl/Config.in
@@ -14,5 +14,15 @@ config BR2_PACKAGE_PERL
 
 	  http://www.perl.org/
 
+if BR2_PACKAGE_PERL
+
+config BR2_PACKAGE_PERL_DB_FILE
+	bool "DB_File"
+	select BR2_PACKAGE_BERKELEYDB
+	help
+	  Build the DB_File module.
+
+endif
+
 comment "perl requires an architecture supported by qemu"
 	depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64
diff --git a/package/perl/perl.mk b/package/perl/perl.mk
index 7ac1aed..186158b 100644
--- a/package/perl/perl.mk
+++ b/package/perl/perl.mk
@@ -11,7 +11,11 @@ PERL_SOURCE = perl-$(PERL_VERSION).tar.bz2
 PERL_LICENSE = Artistic
 PERL_LICENSE_FILES = Artistic
 PERL_INSTALL_STAGING = YES
+
 PERL_DEPENDENCIES = host-qemu
+ifeq ($(BR2_PACKAGE_BERKELEYDB),y)
+    PERL_DEPENDENCIES += berkeleydb
+endif
 
 PERL_CONF_OPT = -des \
 		-Dusecrosscompile \
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 4/9] gdbm: new package
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 2/9] perl: " Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 3/9] perl: add DB_File Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 5/9] perl: add GDBM_File Francois Perrad
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/Config.in      |    1 +
 package/gdbm/Config.in |    8 ++++++++
 package/gdbm/gdbm.mk   |   12 ++++++++++++
 3 files changed, 21 insertions(+)
 create mode 100644 package/gdbm/Config.in
 create mode 100644 package/gdbm/gdbm.mk

diff --git a/package/Config.in b/package/Config.in
index 00a79ab..d9cadf9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -324,6 +324,7 @@ endmenu
 
 menu "Database"
 source "package/berkeleydb/Config.in"
+source "package/gdbm/Config.in"
 source "package/mysql_client/Config.in"
 source "package/sqlcipher/Config.in"
 source "package/sqlite/Config.in"
diff --git a/package/gdbm/Config.in b/package/gdbm/Config.in
new file mode 100644
index 0000000..d5aae83
--- /dev/null
+++ b/package/gdbm/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_GDBM
+	bool "gdbm"
+	help
+	  GNU dbm is a set of database routines that use extensible hashing.
+	  It works similar to the standard UNIX dbm routines.
+
+	  http://www.gnu.org/software/gdbm/gdbm.html
+
diff --git a/package/gdbm/gdbm.mk b/package/gdbm/gdbm.mk
new file mode 100644
index 0000000..4971b12
--- /dev/null
+++ b/package/gdbm/gdbm.mk
@@ -0,0 +1,12 @@
+#############################################################
+#
+# gdbm
+#
+#############################################################
+GDBM_VERSION = 1.10
+GDBM_SITE = $(BR2_GNU_MIRROR)/gdbm
+GDBM_LICENSE = GPLv3
+GDBM_LICENSE_FILES = COPYING
+GDBM_INSTALL_STAGING = YES
+
+$(eval $(autotools-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 5/9] perl: add GDBM_File
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (2 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 4/9] gdbm: new package Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 6/9] perl: add option "custom install" Francois Perrad
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/perl/Config.in |    6 ++++++
 package/perl/perl.mk   |    3 +++
 2 files changed, 9 insertions(+)

diff --git a/package/perl/Config.in b/package/perl/Config.in
index 6cb89f0..98b41da 100644
--- a/package/perl/Config.in
+++ b/package/perl/Config.in
@@ -22,6 +22,12 @@ config BR2_PACKAGE_PERL_DB_FILE
 	help
 	  Build the DB_File module.
 
+config BR2_PACKAGE_PERL_GDBM_FILE
+	bool "GDBM_File"
+	select BR2_PACKAGE_GDBM
+	help
+	  Build the GDBM_File module.
+
 endif
 
 comment "perl requires an architecture supported by qemu"
diff --git a/package/perl/perl.mk b/package/perl/perl.mk
index 186158b..56abbc1 100644
--- a/package/perl/perl.mk
+++ b/package/perl/perl.mk
@@ -16,6 +16,9 @@ PERL_DEPENDENCIES = host-qemu
 ifeq ($(BR2_PACKAGE_BERKELEYDB),y)
     PERL_DEPENDENCIES += berkeleydb
 endif
+ifeq ($(BR2_PACKAGE_GDBM),y)
+    PERL_DEPENDENCIES += gdbm
+endif
 
 PERL_CONF_OPT = -des \
 		-Dusecrosscompile \
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 6/9] perl: add option "custom install"
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (3 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 5/9] perl: add GDBM_File Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 7/9] perl: prepare the removal of microperl Francois Perrad
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

allows same behaviour (and footprint) as microperl

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/perl/Config.in |   16 ++++++++++++++++
 package/perl/perl.mk   |   32 ++++++++++++++++++++++++++++++++
 2 files changed, 48 insertions(+)

diff --git a/package/perl/Config.in b/package/perl/Config.in
index 98b41da..0642deb 100644
--- a/package/perl/Config.in
+++ b/package/perl/Config.in
@@ -16,6 +16,22 @@ config BR2_PACKAGE_PERL
 
 if BR2_PACKAGE_PERL
 
+config BR2_PACKAGE_PERL_CUSTOM_INSTALL
+	bool "custom install"
+	help
+	  Don't use the full install target
+	  Install only a selection of modules (like microperl).
+
+config BR2_PACKAGE_PERL_MODULES
+	string "additional modules"
+	depends on BR2_PACKAGE_PERL_CUSTOM_INSTALL
+	help
+	  List of space-separated perl modules to copy to the rootfs.
+
+	  Examples: constant.pm Getopt/Std.pm Time/Local.pm
+
+	  Module dependencies are not automatic so check your needs.
+
 config BR2_PACKAGE_PERL_DB_FILE
 	bool "DB_File"
 	select BR2_PACKAGE_BERKELEYDB
diff --git a/package/perl/perl.mk b/package/perl/perl.mk
index 56abbc1..81dff04 100644
--- a/package/perl/perl.mk
+++ b/package/perl/perl.mk
@@ -89,7 +89,38 @@ PERL_RUN_PERL = $(QEMU_USER) $(@D)/perl -Ilib
 PERL_ARCHNAME = $(shell $(PERL_RUN_PERL) -MConfig -e "print Config->{archname}")
 PERL_LIB = $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)
 PERL_ARCHLIB = $(PERL_LIB)/$(PERL_ARCHNAME)
+PERL_MODS = $(call qstrip,$(BR2_PACKAGE_PERL_MODULES))
+# Minimal set of modules required for 'perl -V' to work
+PERL_ARCH_MODS = Config.pm Config_git.pl Config_heavy.pl
+PERL_BASE_MODS = strict.pm vars.pm warnings.pm warnings/register.pm
 
+define PERL_INSTALL_MODULES
+	for i in $(PERL_ARCH_MODS); do \
+		$(INSTALL) -m 0644 -D $(@D)/lib/$$i $(PERL_ARCHLIB)/$$i; \
+	done
+	for i in $(PERL_BASE_MODS); do \
+		$(INSTALL) -m 0644 -D $(@D)/lib/$$i $(PERL_LIB)/$$i; \
+	done
+	for i in $(PERL_MODS); do \
+		j=`echo $$i|cut -d : -f 1` ; \
+		if [ -d $(@D)/lib/$$j ] ; then \
+			cp -af $(@D)/lib/$$j $(PERL_LIB) ; \
+		fi ; \
+		if [ -f $(@D)/lib/$$i ] ; then \
+			$(INSTALL) -m 0644 -D $(@D)/lib/$$i $(PERL_LIB)/$$i; \
+		fi ; \
+	done
+	# Remove test files
+	find $(PERL_LIB) -type f -name *.t -exec rm -f {} \;
+endef
+
+ifeq ($(BR2_PACKAGE_PERL_CUSTOM_INSTALL),y)
+define PERL_INSTALL_TARGET_CMDS
+	$(INSTALL) -m 0755 -D $(@D)/perl $(TARGET_DIR)/usr/bin/perl
+	$(INSTALL) -m 0755 -D $(@D)/libperl.so $(PERL_ARCHLIB)/CORE/libperl.so
+	$(PERL_INSTALL_MODULES)
+endef
+else
 define PERL_INSTALL_TARGET_CMDS
 	$(MAKE) INSTALL_DEPENDENCE= \
 		INSTALLFLAGS=-p \
@@ -98,6 +129,7 @@ define PERL_INSTALL_TARGET_CMDS
 	rm -f $(PERL_ARCHLIB)/CORE/*.h
 	find $(PERL_ARCHLIB) -type f -name *.bs -exec rm -f {} \;
 endef
+endif
 
 define PERL_CLEAN_CMDS
 	-$(MAKE) -C $(@D) clean
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 7/9] perl: prepare the removal of microperl
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (4 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 6/9] perl: add option "custom install" Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 8/9] cpanminus: new package Francois Perrad
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

---
 package/autoconf/Config.in   |    2 +-
 package/autoconf/autoconf.mk |    2 +-
 package/automake/Config.in   |    2 +-
 package/automake/automake.mk |    2 +-
 package/microperl/Config.in  |    1 +
 package/ntp/Config.in        |    4 ++--
 package/samba/Config.in      |    4 ++--
 7 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/package/autoconf/Config.in b/package/autoconf/Config.in
index 00b3e2c..5f2f148 100644
--- a/package/autoconf/Config.in
+++ b/package/autoconf/Config.in
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_AUTOCONF
 	bool "autoconf"
-	select BR2_PACKAGE_MICROPERL
+	select BR2_PACKAGE_PERL
 	help
 	  Extensible program for developing configure scripts.  These
 	  scripts handle all the mundane system/feature detection.
diff --git a/package/autoconf/autoconf.mk b/package/autoconf/autoconf.mk
index 3f84e3e..0cb50db 100644
--- a/package/autoconf/autoconf.mk
+++ b/package/autoconf/autoconf.mk
@@ -10,7 +10,7 @@ AUTOCONF_SITE = $(BR2_GNU_MIRROR)/autoconf
 AUTOCONF_CONF_ENV = EMACS="no" ac_cv_path_M4=$(HOST_DIR)/usr/bin/m4 \
 		    ac_cv_prog_gnu_m4_gnu=no
 
-AUTOCONF_DEPENDENCIES = microperl host-m4
+AUTOCONF_DEPENDENCIES = host-m4 perl
 
 HOST_AUTOCONF_CONF_ENV = ac_cv_path_M4=$(HOST_DIR)/usr/bin/m4 \
 			ac_cv_prog_gnu_m4_gnu=no
diff --git a/package/automake/Config.in b/package/automake/Config.in
index 935f1f1..9a9673a 100644
--- a/package/automake/Config.in
+++ b/package/automake/Config.in
@@ -1,7 +1,7 @@
 config BR2_PACKAGE_AUTOMAKE
 	bool "automake"
 	select BR2_PACKAGE_AUTOCONF
-	select BR2_PACKAGE_MICROPERL
+	select BR2_PACKAGE_PERL
 	help
 	  Tool for automatically generating Makefile's for input to
 	  configure scripts (made by autoconf).
diff --git a/package/automake/automake.mk b/package/automake/automake.mk
index 3c19085..8be56c3 100644
--- a/package/automake/automake.mk
+++ b/package/automake/automake.mk
@@ -7,7 +7,7 @@
 AUTOMAKE_VERSION = 1.11.5
 AUTOMAKE_SITE = $(BR2_GNU_MIRROR)/automake
 
-AUTOMAKE_DEPENDENCIES = host-autoconf autoconf microperl
+AUTOMAKE_DEPENDENCIES = host-autoconf autoconf perl
 
 HOST_AUTOMAKE_DEPENDENCIES = host-autoconf
 
diff --git a/package/microperl/Config.in b/package/microperl/Config.in
index 66bbedd..19d104a 100644
--- a/package/microperl/Config.in
+++ b/package/microperl/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_MICROPERL
 	bool "microperl"
 	# needs fork()
 	depends on BR2_USE_MMU
+	depends on BR2_DEPRECATED
 	help
 	  Perl without operating-specific functions such as readdir.
 
diff --git a/package/ntp/Config.in b/package/ntp/Config.in
index 5996596..ec5dbbb 100644
--- a/package/ntp/Config.in
+++ b/package/ntp/Config.in
@@ -20,7 +20,7 @@ config BR2_PACKAGE_NTP_NTP_KEYGEN
 
 config BR2_PACKAGE_NTP_NTP_WAIT
 	bool "ntp-wait"
-	depends on BR2_PACKAGE_MICROPERL
+	depends on BR2_PACKAGE_PERL
 	help
 	  ntp-wait waits until the locally running ntpd is in state 4
 	  (synchronized). This could be useful at boot time, to delay the
@@ -59,7 +59,7 @@ config BR2_PACKAGE_NTP_NTPSNMPD
 
 config BR2_PACKAGE_NTP_NTPTRACE
 	bool "ntptrace"
-	depends on BR2_PACKAGE_MICROPERL
+	depends on BR2_PACKAGE_PERL
 	help
 	  ntptrace is a perl script that uses the ntpq utility program to
 	  follow the chain of NTP servers from a given host back to the
diff --git a/package/samba/Config.in b/package/samba/Config.in
index e88b360..92714d7 100644
--- a/package/samba/Config.in
+++ b/package/samba/Config.in
@@ -36,12 +36,12 @@ config BR2_PACKAGE_SAMBA_FINDSMB
 	default y
 	depends on BR2_PACKAGE_SAMBA_SMBCLIENT
 	depends on BR2_PACKAGE_SAMBA_NMBLOOKUP
-	depends on BR2_PACKAGE_MICROPERL
+	depends on BR2_PACKAGE_PERL
 	help
 	  Script to browse network
 
 comment "findsmb       - disabled (requires nmblookup, smbclient and perl)"
-	depends on !BR2_PACKAGE_SAMBA_SMBCLIENT || !BR2_PACKAGE_SAMBA_NMBLOOKUP || !BR2_PACKAGE_MICROPERL
+	depends on !BR2_PACKAGE_SAMBA_SMBCLIENT || !BR2_PACKAGE_SAMBA_NMBLOOKUP || !BR2_PACKAGE_PERL
 
 config BR2_PACKAGE_SAMBA_NET
 	bool "net"
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 8/9] cpanminus: new package
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (5 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 7/9] perl: prepare the removal of microperl Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 9/9] microperl: remove it Francois Perrad
  2012-11-03 16:10 ` [Buildroot] [PATCH v11 1/9] host-qemu: new package Peter Korsgaard
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/Config.in                        |    5 ++++
 package/cpanminus/Config.in              |   36 +++++++++++++++++++++++
 package/cpanminus/cpanminus.mk           |   47 ++++++++++++++++++++++++++++++
 package/perl/perl-fix-Module-Build.patch |   16 ++++++++++
 4 files changed, 104 insertions(+)
 create mode 100644 package/cpanminus/Config.in
 create mode 100644 package/cpanminus/cpanminus.mk
 create mode 100644 package/perl/perl-fix-Module-Build.patch

diff --git a/package/Config.in b/package/Config.in
index d9cadf9..06050f2 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -263,6 +263,11 @@ source "package/xavante/Config.in"
 endmenu
 endif
 source "package/perl/Config.in"
+if BR2_PACKAGE_PERL
+menu "Perl libraries/modules"
+source "package/cpanminus/Config.in"
+endmenu
+endif
 source "package/microperl/Config.in"
 source "package/php/Config.in"
 source "package/python/Config.in"
diff --git a/package/cpanminus/Config.in b/package/cpanminus/Config.in
new file mode 100644
index 0000000..b8b39dc
--- /dev/null
+++ b/package/cpanminus/Config.in
@@ -0,0 +1,36 @@
+config BR2_PACKAGE_CPANMINUS
+	bool "cpanminus"
+	help
+	  cpanminus is a script to get, unpack, build and install Perl modules
+	  from CPAN.
+
+	  Why? It's dependency free, requires zero configuration, and stands
+	  alone. When running, it requires only 10MB of RAM.
+
+	  http://github.com/miyagawa/cpanminus
+
+if BR2_PACKAGE_CPANMINUS
+
+config BR2_PACKAGE_CPANMINUS_MIRROR
+	string "mirror"
+	help
+	  Specifies the base URL for the CPAN mirror to use,
+	  such as http://cpan.cpantesters.org/.
+
+config BR2_PACKAGE_CPANMINUS_MODULES
+	string "Perl modules from CPAN"
+	default "Curses::UI"
+	help
+	  List of space-separated Perl modules to install from CPAN.
+
+	  Examples: Try::Tiny Dancer YAML Moo
+
+	  Install the listed modules and their dependencies.
+
+config BR2_PACKAGE_CPANMINUS_NATIVE_DEPENDENCIES
+	string "native dependencies"
+	default "ncurses"
+	help
+	  Some XS modules require native libraries.
+
+endif
diff --git a/package/cpanminus/cpanminus.mk b/package/cpanminus/cpanminus.mk
new file mode 100644
index 0000000..d3a338b
--- /dev/null
+++ b/package/cpanminus/cpanminus.mk
@@ -0,0 +1,47 @@
+#############################################################
+#
+# cpanminus
+#
+#############################################################
+
+CPANMINUS_VERSION = 1.5018
+CPANMINUS_SOURCE = miyagawa-cpanminus-$(CPANMINUS_VERSION)-0-gee6cd30.tar.gz
+CPANMINUS_SITE = https://github.com/miyagawa/cpanminus/tarball/$(CPANMINUS_VERSION)
+CPANMINUS_DEPENDENCIES = perl $(call qstrip,$(BR2_PACKAGE_CPANMINUS_NATIVE_DEPENDENCIES))
+
+CPANMINUS_RUN_PERL = $(QEMU_USER) $(STAGING_DIR)/usr/bin/perl
+CPANMINUS_ARCHNAME = $(shell $(CPANMINUS_RUN_PERL) -MConfig -e "print Config->{archname}")
+CPANMINUS_PERL_LIB      = $(STAGING_DIR)/usr/lib/perl5/$(PERL_VERSION)
+CPANMINUS_PERL_SITELIB  = $(TARGET_DIR)/usr/lib/perl5/site_perl/$(PERL_VERSION)
+CPANMINUS_PERL_ARCHLIB  = $(CPANMINUS_PERL_LIB)/$(CPANMINUS_ARCHNAME)
+CPANMINUS_PERL_SITEARCH = $(CPANMINUS_PERL_SITELIB)/$(CPANMINUS_ARCHNAME)
+CPANMINUS_PERL5LIB = $(CPANMINUS_PERL_SITEARCH):$(CPANMINUS_PERL_SITELIB):$(CPANMINUS_PERL_ARCHLIB):$(CPANMINUS_PERL_LIB)
+ifneq ($(BR2_PACKAGE_CPANMINUS_MIRROR),"")
+    CPANMINUS_MIRROR = --mirror $(call qstrip,$(BR2_PACKAGE_CPANMINUS_MIRROR)) --mirror-only
+endif
+CPANMINUS_MODULES = $(call qstrip,$(BR2_PACKAGE_CPANMINUS_MODULES))
+
+ifneq ($(CPANMINUS_MODULES),)
+define CPANMINUS_INSTALL_TARGET_CMDS
+	echo "#!/bin/sh"                                                        > $(@D)/run_perl
+	echo "PERL5LIB=$(CPANMINUS_PERL5LIB) $(CPANMINUS_RUN_PERL) \"\$$@\""    >>$(@D)/run_perl
+	chmod +x $(@D)/run_perl
+	PERL5LIB=$(CPANMINUS_PERL5LIB) \
+	PERL_MM_OPT="DESTDIR=$(TARGET_DIR) PERL=$(@D)/run_perl PERL_LIB=$(CPANMINUS_PERL_LIB) PERL_ARCHLIB=$(CPANMINUS_PERL_ARCHLIB)" \
+	PERL_MB_OPT="--destdir $(TARGET_DIR)" \
+	RUN_PERL="$(@D)/run_perl" \
+	$(CPANMINUS_RUN_PERL) $(@D)/cpanm \
+		--perl=$(@D)/run_perl \
+		--notest \
+		--no-man-pages \
+		$(CPANMINUS_MIRROR) \
+		$(call qstrip,$(BR2_PACKAGE_CPANMINUS_MODULES))
+	find $(CPANMINUS_PERL_SITEARCH) -type f -name *.bs -exec rm -f {} \;
+endef
+else
+define CPANMINUS_INSTALL_TARGET_CMDS
+	@echo "No modules to install"
+endef
+endif
+
+$(eval $(generic-package))
diff --git a/package/perl/perl-fix-Module-Build.patch b/package/perl/perl-fix-Module-Build.patch
new file mode 100644
index 0000000..26b15e4
--- /dev/null
+++ b/package/perl/perl-fix-Module-Build.patch
@@ -0,0 +1,16 @@
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/cpan/Module-Build/lib/Module/Build/Base.pm
+===================================================================
+--- a/cpan/Module-Build/lib/Module/Build/Base.pm
++++ b/cpan/Module-Build/lib/Module/Build/Base.pm
+@@ -456,7 +456,7 @@
+   my $proto = shift;
+   my $c     = ref($proto) ? $proto->{config} : 'Module::Build::Config';
+ 
+-  my $perl  = $^X;
++  my $perl  = $ENV{RUN_PERL} || $^X;
+   my $perl_basename = File::Basename::basename($perl);
+ 
+   my @potential_perls;
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 9/9] microperl: remove it
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (6 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 8/9] cpanminus: new package Francois Perrad
@ 2012-10-19 13:13 ` Francois Perrad
  2012-11-03 16:10 ` [Buildroot] [PATCH v11 1/9] host-qemu: new package Peter Korsgaard
  8 siblings, 0 replies; 23+ messages in thread
From: Francois Perrad @ 2012-10-19 13:13 UTC (permalink / raw)
  To: buildroot

replaced by perl
use BR2_PACKAGE_PERL_CUSTOM_INSTALL if you want a small footprint

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
 package/Config.in                                  |    1 -
 package/libxml-parser-perl/libxml-parser-perl.mk   |    6 -
 package/microperl/Config.in                        |   30 ----
 .../microperl/microperl-no-signal-handlers.patch   |   22 ---
 package/microperl/microperl-uudmap.patch           |   47 ------
 package/microperl/microperl.mk                     |  156 --------------------
 6 files changed, 262 deletions(-)
 delete mode 100644 package/microperl/Config.in
 delete mode 100644 package/microperl/microperl-no-signal-handlers.patch
 delete mode 100644 package/microperl/microperl-uudmap.patch
 delete mode 100644 package/microperl/microperl.mk

diff --git a/package/Config.in b/package/Config.in
index 06050f2..987d1d1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -268,7 +268,6 @@ menu "Perl libraries/modules"
 source "package/cpanminus/Config.in"
 endmenu
 endif
-source "package/microperl/Config.in"
 source "package/php/Config.in"
 source "package/python/Config.in"
 if BR2_PACKAGE_PYTHON
diff --git a/package/libxml-parser-perl/libxml-parser-perl.mk b/package/libxml-parser-perl/libxml-parser-perl.mk
index a6f8ae9..8e2f899 100644
--- a/package/libxml-parser-perl/libxml-parser-perl.mk
+++ b/package/libxml-parser-perl/libxml-parser-perl.mk
@@ -9,12 +9,6 @@ LIBXML_PARSER_PERL_SITE:=http://www.cpan.org/modules/by-module/XML/
 
 LIBXML_PARSER_PERL_DEPENDENCIES = expat
 
-ifeq ($(BR2_PACKAGE_MICROPERL),y)
-# microperl builds host-microperl, so ensure we build after that to build
-# against host-microperl instead of the system perl
-LIBXML_PARSER_PERL_DEPENDENCIES += microperl
-endif
-
 define HOST_LIBXML_PARSER_PERL_CONFIGURE_CMDS
  (cd $(@D) ; \
    $(HOST_CONFIGURE_OPTS) perl Makefile.PL \
diff --git a/package/microperl/Config.in b/package/microperl/Config.in
deleted file mode 100644
index 19d104a..0000000
--- a/package/microperl/Config.in
+++ /dev/null
@@ -1,30 +0,0 @@
-config BR2_PACKAGE_MICROPERL
-	bool "microperl"
-	# needs fork()
-	depends on BR2_USE_MMU
-	depends on BR2_DEPRECATED
-	help
-	  Perl without operating-specific functions such as readdir.
-
-if BR2_PACKAGE_MICROPERL
-
-config BR2_PACKAGE_MICROPERL_MODULES
-	string "additional modules"
-	help
-	  List of space-separated microperl modules to copy to the rootfs.
-
-	  Examples: warnings.pm Getopt/Std.pm Time::Local
-
-	  Module dependencies are not automatic so check your needs.
-	  You can't use XS modules like IO.
-
-menu "module bundles"
-
-config BR2_PACKAGE_MICROPERL_BUNDLE_CGI
-	bool "CGI"
-	help
-	  Copy required modules to do CGI scripting.
-
-endmenu
-
-endif
diff --git a/package/microperl/microperl-no-signal-handlers.patch b/package/microperl/microperl-no-signal-handlers.patch
deleted file mode 100644
index 3c9aa41..0000000
--- a/package/microperl/microperl-no-signal-handlers.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Backport of http://perl5.git.perl.org/perl.git/commitdiff/01d65469392dfc0a?hp=a82b5f080d91ffe184d8ac4795ac71e72e612c2f
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura perl-5.12.3/miniperlmain.c perl-5.12.3-nosig/miniperlmain.c
---- perl-5.12.3/miniperlmain.c	2011-01-09 17:20:57.000000000 -0300
-+++ perl-5.12.3-nosig/miniperlmain.c	2011-04-14 10:16:53.564639438 -0300
-@@ -116,12 +116,14 @@
-     if (!exitstatus)
-         perl_run(my_perl);
- 
-+#ifndef PERL_MICRO
-     /* Unregister our signal handler before destroying my_perl */
-     for (i = 0; PL_sig_name[i]; i++) {
- 	if (rsignal_state(PL_sig_num[i]) == (Sighandler_t) PL_csighandlerp) {
- 	    rsignal(PL_sig_num[i], (Sighandler_t) SIG_DFL);
- 	}
-     }
-+#endif
- 
-     exitstatus = perl_destruct(my_perl);
- 
diff --git a/package/microperl/microperl-uudmap.patch b/package/microperl/microperl-uudmap.patch
deleted file mode 100644
index c72f9c9..0000000
--- a/package/microperl/microperl-uudmap.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From a82b5f080d91ffe184d8ac4795ac71e72e612c2f Mon Sep 17 00:00:00 2001
-From: David Leadbeater <dgl@dgl.cx>
-Date: Mon, 7 Mar 2011 18:40:55 +0000
-Subject: [PATCH] microperl: Update generate_uudmap in Makefile.micro
-
-Makefile.micro hadn't kept up with the changes for generate_uudmap,
-make it match the real Makefile.
----
- Makefile.micro |    8 ++++----
- 1 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile.micro b/Makefile.micro
-index 4b738f5..567d98a 100644
---- a/Makefile.micro
-+++ b/Makefile.micro
-@@ -35,7 +35,7 @@ H = av.h uconfig.h cop.h cv.h embed.h embedvar.h form.h gv.h handy.h \
- HE = $(H) EXTERN.h
- 
- clean:
--	-rm -f $(O) microperl generate_uudmap$(_X) uudmap.h
-+	-rm -f $(O) microperl generate_uudmap$(_X) uudmap.h bitcount.h
- 
- distclean:	clean
- 
-@@ -74,7 +74,7 @@ udoop$(_O):	$(HE) doop.c
- udump$(_O):	$(HE) dump.c regcomp.h regnodes.h
- 	$(CC) $(CCFLAGS) -o $@ $(CFLAGS) dump.c
- 
--uglobals$(_O):	$(H) globals.c INTERN.h perlapi.h
-+uglobals$(_O):	$(H) globals.c INTERN.h perlapi.h uudmap.h bitcount.h
- 	$(CC) $(CCFLAGS) -o $@ $(CFLAGS) globals.c
- 
- ugv$(_O):	$(HE) gv.c
-@@ -173,8 +173,8 @@ uutil$(_O):	$(HE) util.c
- uperlapi$(_O):	$(HE) perlapi.c perlapi.h
- 	$(CC) $(CCFLAGS) -o $@ $(CFLAGS) perlapi.c
- 
--uudmap.h: generate_uudmap$(_X)
--	$(RUN) ./generate_uudmap$(_X) >uudmap.h
-+uudmap.h bitcount.h: generate_uudmap$(_X)
-+	$(RUN) ./generate_uudmap$(_X) uudmap.h bitcount.h
- 
- generate_uudmap$(_O): generate_uudmap.c
- 	$(CC) $(CCFLAGS) -o $@ $(CFLAGS) generate_uudmap.c
--- 
-1.6.5.2.74.g610f9.dirty
-
diff --git a/package/microperl/microperl.mk b/package/microperl/microperl.mk
deleted file mode 100644
index b2a912a..0000000
--- a/package/microperl/microperl.mk
+++ /dev/null
@@ -1,156 +0,0 @@
-#############################################################
-#
-# microperl
-#
-#############################################################
-
-MICROPERL_VERSION = 5.12.4
-MICROPERL_SITE = http://www.cpan.org/src/5.0
-MICROPERL_SOURCE = perl-$(MICROPERL_VERSION).tar.bz2
-MICROPERL_LICENSE = Artistic
-MICROPERL_LICENSE_FILES = Artistic
-MICROPERL_DEPENDENCIES = host-microperl
-MICROPERL_MODS_DIR = /usr/lib/perl5/$(MICROPERL_VERSION)
-MICROPERL_ARCH_DIR = $(MICROPERL_MODS_DIR)/$(GNU_TARGET_NAME)
-MICROPERL_MODS = $(call qstrip,$(BR2_PACKAGE_MICROPERL_MODULES))
-
-# Minimal set of modules required for 'perl -V' to work
-MICROPERL_ARCH_MODS = Config.pm Config_git.pl Config_heavy.pl
-MICROPERL_BASE_MODS = strict.pm
-
-# CGI bundle
-ifeq ($(BR2_PACKAGE_MICROPERL_BUNDLE_CGI),y)
-MICROPERL_MODS += constant.pm CGI CGI.pm Carp.pm Exporter.pm overload.pm \
-	vars.pm warnings.pm warnings/register.pm
-endif
-
-# Host microperl is actually full-blown perl
-define HOST_MICROPERL_CONFIGURE_CMDS
-	cd $(@D) ; \
-	./Configure -Dcc="$(HOSTCC)" -Dprefix="$(HOST_DIR)/usr" \
-		-Dloclibpth='/lib /lib64 /usr/lib /usr/lib64' -des
-endef
-
-define HOST_MICROPERL_BUILD_CMDS
-	$(MAKE) -C $(@D)
-endef
-
-define HOST_MICROPERL_INSTALL_CMDS
-	$(MAKE) -C $(@D) install
-endef
-
-ifeq ($(BR2_ENDIAN),"BIG")
-define MICROPERL_BIGENDIAN
-	$(SED) '/^byteorder=/d' $(@D)/uconfig.sh
-	echo "byteorder='4321'" >>$(@D)/uconfig.sh
-endef
-endif
-
-ifeq ($(BR2_LARGEFILE),y)
-define MICROPERL_LARGEFILE
-	$(SED) '/^uselargefiles=/d' $(@D)/uconfig.sh
-	echo "uselargefiles='define'" >>$(@D)/uconfig.sh
-endef
-endif
-
-ifeq ($(BR2_USE_WCHAR),y)
-define MICROPERL_WCHAR
-	$(SED) '/^d_mbstowcs=/d' -e '/^d_mbtowc=/d' -e '/^d_wcstombs=/d' \
-		-e '/^d_wctomb=/d' $(@D)/uconfig.sh
-	echo "d_mbstowcs='define'" >>$(@D)/uconfig.sh
-	echo "d_mbtowc='define'" >>$(@D)/uconfig.sh
-	echo "d_wcstombs='define'" >>$(@D)/uconfig.sh
-	echo "d_wctomb='define'" >>$(@D)/uconfig.sh
-endef
-endif
-
-define MICROPERL_CONFIGURE_CMDS
-	$(SED) '/^archlib=/d' -e '/^archlibexp=/d' -e '/^optimize=/d' \
-		-e '/^archname=/d' -e '/^d_poll=/d' -e '/^i_poll=/d' \
-		-e '/^osname=/d' -e '/^u32type=/d' -e '/^d_archlib=/d' \
-		-e '/^d_memset=/d' -e '/^i_fcntl=/d' -e '/^useperlio=/d' \
-		-e '/^need_va_copy=/d' $(@D)/uconfig.sh
-	$(SED) 's/5.12/$(MICROPERL_VERSION)/' $(@D)/uconfig.sh
-	echo "archlib='$(MICROPERL_ARCH_DIR)'" >>$(@D)/uconfig.sh
-	echo "archlibexp='$(MICROPERL_ARCH_DIR)'" >>$(@D)/uconfig.sh
-	echo "d_archlib='define'" >>$(@D)/uconfig.sh
-	echo "archname='$(GNU_TARGET_NAME)'" >>$(@D)/uconfig.sh
-	echo "osname='linux'" >>$(@D)/uconfig.sh
-	echo "cc='$(TARGET_CC)'" >>$(@D)/uconfig.sh
-	echo "ccflags='$(TARGET_CFLAGS)'" >>$(@D)/uconfig.sh
-	echo "optimize='$(TARGET_CFLAGS)'" >>$(@D)/uconfig.sh
-	echo "usecrosscompile='define'" >>$(@D)/uconfig.sh
-	echo "d_memset='define'" >>$(@D)/uconfig.sh
-	echo "i_fcntl='define'" >>$(@D)/uconfig.sh
-	echo "useperlio='define'" >>$(@D)/uconfig.sh
-	echo "u32type='unsigned int'" >>$(@D)/uconfig.sh
-	echo "need_va_copy='define'" >>$(@D)/uconfig.sh
-	echo "d_poll='define'" >>$(@D)/uconfig.sh
-	echo "i_poll='define'" >>$(@D)/uconfig.sh
-	$(SED) 's/UNKNOWN-/Buildroot $(BR2_VERSION_FULL) /' $(@D)/patchlevel.h
-	$(SED) 's/local\///' $(@D)/uconfig.sh
-	$(MICROPERL_BIGENDIAN)
-	$(MICROPERL_LARGEFILE)
-	$(MICROPERL_WCHAR)
-	$(MAKE) -C $(@D) -f Makefile.micro regen_uconfig
-	cp -f $(@D)/uconfig.h $(@D)/config.h
-	cp -f $(@D)/uconfig.sh $(@D)/config.sh
-	echo "ccname='$(TARGET_CC)'" >>$(@D)/config.sh
-	echo "PERL_CONFIG_SH=true" >>$(@D)/config.sh
-	cd $(@D) ; $(HOST_DIR)/usr/bin/perl make_patchnum.pl ; \
-	$(HOST_DIR)/usr/bin/perl configpm
-endef
-
-define MICROPERL_BUILD_CMDS
-	$(MAKE) -f Makefile.micro -C $(@D) \
-		CC="$(HOSTCC)" bitcount.h
-	$(MAKE) -f Makefile.micro -C $(@D) \
-		CC="$(TARGET_CC)" OPTIMIZE="$(TARGET_CFLAGS)"
-endef
-
-# Some extensions don't need a build run
-# We try to build anyway to avoid a huge black list
-# Just ignore make_ext.pl warning/errors
-define MICROPERL_BUILD_EXTENSIONS
-	for i in $(MICROPERL_MODS); do \
-	cd $(@D); ln -sf $(HOST_DIR)/usr/bin/perl miniperl; \
-		PERL5LIB=$(TARGET_DIR)/$(MICROPERL_ARCH_DIR) \
-		$(HOST_DIR)/usr/bin/perl make_ext.pl MAKE="$(MAKE)" --nonxs \
-		`echo $$i|sed -e 's/.pm//'`; \
-	done
-endef
-
-define MICROPERL_INSTALL_TARGET_CMDS
-	$(INSTALL) -m 0755 -D $(@D)/microperl $(TARGET_DIR)/usr/bin/microperl
-	ln -sf microperl $(TARGET_DIR)/usr/bin/perl
-	for i in $(MICROPERL_ARCH_MODS); do \
-		$(INSTALL) -m 0644 -D $(@D)/lib/$$i \
-			$(TARGET_DIR)/$(MICROPERL_ARCH_DIR)/$$i; \
-	done
-	for i in $(MICROPERL_BASE_MODS); do \
-		$(INSTALL) -m 0644 -D $(@D)/lib/$$i \
-			$(TARGET_DIR)/$(MICROPERL_MODS_DIR)/$$i; \
-	done
-	$(MICROPERL_BUILD_EXTENSIONS)
-	for i in $(MICROPERL_MODS); do \
-		j=`echo $$i|cut -d : -f 1` ; \
-		if [ -d $(@D)/lib/$$j ] ; then \
-			cp -af $(@D)/lib/$$j $(TARGET_DIR)/$(MICROPERL_MODS_DIR) ; \
-		fi ; \
-		if [ -f $(@D)/lib/$$i ] ; then \
-			$(INSTALL) -m 0644 -D $(@D)/lib/$$i $(TARGET_DIR)/$(MICROPERL_MODS_DIR)/$$i; \
-		fi ; \
-	done
-	# Remove test files
-	find $(TARGET_DIR)/$(MICROPERL_MODS_DIR) -type f -name *.t \
-		-exec rm -f {} \;
-endef
-
-define MICROPERL_UNINSTALL_TARGET_CMDS
-	rm -f $(TARGET_DIR)/usr/bin/perl
-	rm -f $(TARGET_DIR)/usr/bin/microperl
-	rm -rf $(TARGET_DIR)/usr/lib/perl5
-endef
-
-$(eval $(generic-package))
-$(eval $(host-generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 2/9] perl: " Francois Perrad
@ 2012-10-30 20:20   ` Bernd Kuhls
  2012-11-05 16:41     ` François Perrad
  0 siblings, 1 reply; 23+ messages in thread
From: Bernd Kuhls @ 2012-10-30 20:20 UTC (permalink / raw)
  To: buildroot

Hi,

Francois Perrad <fperrad@gmail.com> wrote in
news:1350652434-32020-2-git-send-email-francois.perrad at gadz.org: 

currently I am testing your patchset, but I found problems during 
compiling, some I could solve myself:

> +PERL_CONF_OPT = -des \

[...]

> +          -Dlibc=$(STAGING_DIR)/lib/libc.so \

I had to change this line to

             -Dlibc=$(STAGING_DIR)/usr/lib/libc.so.0 \

for usage with uClibc 0.9.33.2

[...]

> +          -Uoptimize

Here I had to add "-Ud_eaccess" to avoid a compilation bug.

Perl will still not finish to compile, stopping with this error message:

> LD_LIBRARY_PATH=/home/bernd/.fbr/build/output/build/perl-5.16.1 
/home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386 
./miniperl -Ilib make_ext.pl cpan/Archive-Extract/pm_to_blib 
MAKE=/home/bernd/.fbr/build/output/host/usr/bin/make LIBPERL_A=libperl.so
>         Making Archive::Extract (all)
> 
> Creating Makefile.PL in cpan/Archive-Extract for Archive::Extract
> 
> Running Makefile.PL in cpan/Archive-Extract
> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386 
../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none 
INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so
> -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
> Warning: No Makefile!
> /home/bernd/.fbr/build/output/host/usr/bin/make config PERL_CORE=1 
LIBPERL_A=libperl.so failed, continuing anyway...
> Making all in cpan/Archive-Extract
> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386 
/home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1 
LIBPERL_A=libperl.so
> Unsuccessful make(cpan/Archive-Extract): code=-1 at make_ext.pl line 468.
> make[1]: *** [cpan/Archive-Extract/pm_to_blib] Fehler 22
> make[1]: Leaving directory `/home/bernd/.fbr/build/output/build/perl-
5.16.1'
> make: *** [/home/bernd/.fbr/build/output/build/perl-5.16.1/.stamp_built] 
Fehler 2

Executing the last command alone provides this error hinting at a problem 
with host-qemu, which I was able to solve yet.

$ /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386 
/home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1 
LIBPERL_A=libperl.so
qemu: Unsupported syscall: 240
qemu: Unsupported syscall: 240

First I got this error message with Debian Squeeze i386 (virtualbox guest, 
Win XP host), but also on Debian wheezy amd64 running non-virtualized.

My .config can be found here: http://pastebin.com/yz1SzeB2
I am using buildroot as part of the FLI4L source package[1].

Kind regards, Bernd

[1] http://www.fli4l.de/download/tarball-version/aktuell.html

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 1/9] host-qemu: new package
  2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
                   ` (7 preceding siblings ...)
  2012-10-19 13:13 ` [Buildroot] [PATCH v11 9/9] microperl: remove it Francois Perrad
@ 2012-11-03 16:10 ` Peter Korsgaard
  8 siblings, 0 replies; 23+ messages in thread
From: Peter Korsgaard @ 2012-11-03 16:10 UTC (permalink / raw)
  To: buildroot

>>>>> "Francois" == Francois Perrad <fperrad@gmail.com> writes:

 Francois> only user mode for the current target architecture

Committed patch 1-8, thanks!

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-10-30 20:20   ` Bernd Kuhls
@ 2012-11-05 16:41     ` François Perrad
  2012-11-06  1:05       ` Arnout Vandecappelle
  2012-11-06 10:24       ` François Perrad
  0 siblings, 2 replies; 23+ messages in thread
From: François Perrad @ 2012-11-05 16:41 UTC (permalink / raw)
  To: buildroot

2012/10/30 Bernd Kuhls <berndkuhls@hotmail.com>:
> Hi,
>
> Francois Perrad <fperrad@gmail.com> wrote in
> news:1350652434-32020-2-git-send-email-francois.perrad at gadz.org:
>
> currently I am testing your patchset, but I found problems during
> compiling, some I could solve myself:
>
>> +PERL_CONF_OPT = -des \
>
> [...]
>
>> +          -Dlibc=$(STAGING_DIR)/lib/libc.so \
>
> I had to change this line to
>
>              -Dlibc=$(STAGING_DIR)/usr/lib/libc.so.0 \
>
> for usage with uClibc 0.9.33.2
>
> [...]
>
>> +          -Uoptimize
>
> Here I had to add "-Ud_eaccess" to avoid a compilation bug.
>
> Perl will still not finish to compile, stopping with this error message:
>
>> LD_LIBRARY_PATH=/home/bernd/.fbr/build/output/build/perl-5.16.1
> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
> ./miniperl -Ilib make_ext.pl cpan/Archive-Extract/pm_to_blib
> MAKE=/home/bernd/.fbr/build/output/host/usr/bin/make LIBPERL_A=libperl.so
>>         Making Archive::Extract (all)
>>
>> Creating Makefile.PL in cpan/Archive-Extract for Archive::Extract
>>
>> Running Makefile.PL in cpan/Archive-Extract
>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
> ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none
> INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so
>> -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
>> Warning: No Makefile!
>> /home/bernd/.fbr/build/output/host/usr/bin/make config PERL_CORE=1
> LIBPERL_A=libperl.so failed, continuing anyway...
>> Making all in cpan/Archive-Extract
>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
> LIBPERL_A=libperl.so
>> Unsuccessful make(cpan/Archive-Extract): code=-1 at make_ext.pl line 468.
>> make[1]: *** [cpan/Archive-Extract/pm_to_blib] Fehler 22
>> make[1]: Leaving directory `/home/bernd/.fbr/build/output/build/perl-
> 5.16.1'
>> make: *** [/home/bernd/.fbr/build/output/build/perl-5.16.1/.stamp_built]
> Fehler 2
>
> Executing the last command alone provides this error hinting at a problem
> with host-qemu, which I was able to solve yet.
>
> $ /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
> LIBPERL_A=libperl.so
> qemu: Unsupported syscall: 240
> qemu: Unsupported syscall: 240
>
> First I got this error message with Debian Squeeze i386 (virtualbox guest,
> Win XP host), but also on Debian wheezy amd64 running non-virtualized.
>
> My .config can be found here: http://pastebin.com/yz1SzeB2
> I am using buildroot as part of the FLI4L source package[1].
>
> Kind regards, Bernd
>

I could reproduce the lastest problem on the HEAD of Buildroot with
qemu_x86_defconfig (which is a smaller config than your FLI4L config).

Fran?ois

> [1] http://www.fli4l.de/download/tarball-version/aktuell.html
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-05 16:41     ` François Perrad
@ 2012-11-06  1:05       ` Arnout Vandecappelle
  2012-11-06  7:08         ` Thomas Petazzoni
  2012-11-06 21:03         ` Bernd Kuhls
  2012-11-06 10:24       ` François Perrad
  1 sibling, 2 replies; 23+ messages in thread
From: Arnout Vandecappelle @ 2012-11-06  1:05 UTC (permalink / raw)
  To: buildroot

On 11/05/12 17:41, Fran?ois Perrad wrote:
>> >  $/home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>> >  /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>> >  LIBPERL_A=libperl.so
>> >  qemu: Unsupported syscall: 240
>> >  qemu: Unsupported syscall: 240
>> >
>> >  First I got this error message with Debian Squeeze i386 (virtualbox guest,
>> >  Win XP host), but also on Debian wheezy amd64 running non-virtualized.
>> >
>> >  My .config can be found here:http://pastebin.com/yz1SzeB2
>> >  I am using buildroot as part of the FLI4L source package[1].
>> >
>> >  Kind regards, Bernd
>> >
> I could reproduce the lastest problem on the HEAD of Buildroot with
> qemu_x86_defconfig (which is a smaller config than your FLI4L config).

  Is it possible that this is because the target binary is created with
kernel headers 3.2, but you're running it on a host which is only 2.6.32
(squeeze)?  But then it should work on wheezy, because that has 3.2 as
well (at least since about four months IIRC).  Although...  240 on i386
is futex, which has existed already since long before 2.6.32.

  I do find this bug report:
https://bugs.launchpad.net/ubuntu/+source/qemu-linaro/+bug/758424
but I'm not sure if it is relevant.

  Regards,
  Arnout

-- 
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06  1:05       ` Arnout Vandecappelle
@ 2012-11-06  7:08         ` Thomas Petazzoni
  2012-11-06 10:28           ` Alexander Khryukin
  2012-11-06 21:09           ` Bernd Kuhls
  2012-11-06 21:03         ` Bernd Kuhls
  1 sibling, 2 replies; 23+ messages in thread
From: Thomas Petazzoni @ 2012-11-06  7:08 UTC (permalink / raw)
  To: buildroot


On Tue, 06 Nov 2012 02:05:52 +0100, Arnout Vandecappelle wrote:

>   Is it possible that this is because the target binary is created with
> kernel headers 3.2, but you're running it on a host which is only 2.6.32
> (squeeze)?  But then it should work on wheezy, because that has 3.2 as
> well (at least since about four months IIRC).  Although...  240 on i386
> is futex, which has existed already since long before 2.6.32.

Aaah, I didn't think about this problem. This is indeed going to be
really annoying, if the kernel headers chosen for the target have to
somewhat match the kernel version running on the host :-(

I guess this whole qemu thing for Perl is going to be annoying on the
long term. We might need to start looking for a different option, i.e
seeing how to get Perl to build without needing qemu.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-05 16:41     ` François Perrad
  2012-11-06  1:05       ` Arnout Vandecappelle
@ 2012-11-06 10:24       ` François Perrad
  2012-11-06 16:23         ` François Perrad
  1 sibling, 1 reply; 23+ messages in thread
From: François Perrad @ 2012-11-06 10:24 UTC (permalink / raw)
  To: buildroot

2012/11/5 Fran?ois Perrad <francois.perrad@gadz.org>:
> 2012/10/30 Bernd Kuhls <berndkuhls@hotmail.com>:
>> Hi,
>>
>> Francois Perrad <fperrad@gmail.com> wrote in
>> news:1350652434-32020-2-git-send-email-francois.perrad at gadz.org:
>>
>> currently I am testing your patchset, but I found problems during
>> compiling, some I could solve myself:
>>
>>> +PERL_CONF_OPT = -des \
>>
>> [...]
>>
>>> +          -Dlibc=$(STAGING_DIR)/lib/libc.so \
>>
>> I had to change this line to
>>
>>              -Dlibc=$(STAGING_DIR)/usr/lib/libc.so.0 \
>>
>> for usage with uClibc 0.9.33.2
>>
>> [...]
>>
>>> +          -Uoptimize
>>
>> Here I had to add "-Ud_eaccess" to avoid a compilation bug.
>>
>> Perl will still not finish to compile, stopping with this error message:
>>
>>> LD_LIBRARY_PATH=/home/bernd/.fbr/build/output/build/perl-5.16.1
>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>> ./miniperl -Ilib make_ext.pl cpan/Archive-Extract/pm_to_blib
>> MAKE=/home/bernd/.fbr/build/output/host/usr/bin/make LIBPERL_A=libperl.so
>>>         Making Archive::Extract (all)
>>>
>>> Creating Makefile.PL in cpan/Archive-Extract for Archive::Extract
>>>
>>> Running Makefile.PL in cpan/Archive-Extract
>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>> ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none
>> INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so
>>> -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
>>> Warning: No Makefile!
>>> /home/bernd/.fbr/build/output/host/usr/bin/make config PERL_CORE=1
>> LIBPERL_A=libperl.so failed, continuing anyway...
>>> Making all in cpan/Archive-Extract
>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>> LIBPERL_A=libperl.so
>>> Unsuccessful make(cpan/Archive-Extract): code=-1 at make_ext.pl line 468.
>>> make[1]: *** [cpan/Archive-Extract/pm_to_blib] Fehler 22
>>> make[1]: Leaving directory `/home/bernd/.fbr/build/output/build/perl-
>> 5.16.1'
>>> make: *** [/home/bernd/.fbr/build/output/build/perl-5.16.1/.stamp_built]
>> Fehler 2
>>
>> Executing the last command alone provides this error hinting at a problem
>> with host-qemu, which I was able to solve yet.
>>
>> $ /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>> LIBPERL_A=libperl.so
>> qemu: Unsupported syscall: 240
>> qemu: Unsupported syscall: 240
>>
>> First I got this error message with Debian Squeeze i386 (virtualbox guest,
>> Win XP host), but also on Debian wheezy amd64 running non-virtualized.
>>
>> My .config can be found here: http://pastebin.com/yz1SzeB2
>> I am using buildroot as part of the FLI4L source package[1].
>>
>> Kind regards, Bernd
>>
>
> I could reproduce the lastest problem on the HEAD of Buildroot with
> qemu_x86_defconfig (which is a smaller config than your FLI4L config).
>

first, before manually running a command in the build tree, you must
set PERL_MM_OPT
   $ export PERL_MM_OPT="PERL=`pwd`/Cross/miniperl"

the error
    -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
comes from miniperl which fails with a 'system' call.

this problem could be reproduced with a simple one-liner :

$ perl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
hello
0

$ Cross/miniperl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
-1

Fran?ois

> Fran?ois
>
>> [1] http://www.fli4l.de/download/tarball-version/aktuell.html
>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot at busybox.net
>> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06  7:08         ` Thomas Petazzoni
@ 2012-11-06 10:28           ` Alexander Khryukin
  2012-11-06 21:09           ` Bernd Kuhls
  1 sibling, 0 replies; 23+ messages in thread
From: Alexander Khryukin @ 2012-11-06 10:28 UTC (permalink / raw)
  To: buildroot

2012/11/6 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

>
> On Tue, 06 Nov 2012 02:05:52 +0100, Arnout Vandecappelle wrote:
>
> >   Is it possible that this is because the target binary is created with
> > kernel headers 3.2, but you're running it on a host which is only 2.6.32
> > (squeeze)?  But then it should work on wheezy, because that has 3.2 as
> > well (at least since about four months IIRC).  Although...  240 on i386
> > is futex, which has existed already since long before 2.6.32.
>
> Aaah, I didn't think about this problem. This is indeed going to be
> really annoying, if the kernel headers chosen for the target have to
> somewhat match the kernel version running on the host :-(
>
> I guess this whole qemu thing for Perl is going to be annoying on the
> long term. We might need to start looking for a different option, i.e
> seeing how to get Perl to build without needing qemu.
>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, Free Electrons
> Kernel, drivers, real-time and embedded Linux
> development, consulting, training and support.
> http://free-electrons.com
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>


I'm working in chroot. that includes headers from 3.6, but host-system is
CentOS 6.2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20121106/b5229cd9/attachment.html>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06 10:24       ` François Perrad
@ 2012-11-06 16:23         ` François Perrad
  2012-11-08 18:02           ` François Perrad
  0 siblings, 1 reply; 23+ messages in thread
From: François Perrad @ 2012-11-06 16:23 UTC (permalink / raw)
  To: buildroot

2012/11/6 Fran?ois Perrad <francois.perrad@gadz.org>:
> 2012/11/5 Fran?ois Perrad <francois.perrad@gadz.org>:
>> 2012/10/30 Bernd Kuhls <berndkuhls@hotmail.com>:
>>> Hi,
>>>
>>> Francois Perrad <fperrad@gmail.com> wrote in
>>> news:1350652434-32020-2-git-send-email-francois.perrad at gadz.org:
>>>
>>> currently I am testing your patchset, but I found problems during
>>> compiling, some I could solve myself:
>>>
>>>> +PERL_CONF_OPT = -des \
>>>
>>> [...]
>>>
>>>> +          -Dlibc=$(STAGING_DIR)/lib/libc.so \
>>>
>>> I had to change this line to
>>>
>>>              -Dlibc=$(STAGING_DIR)/usr/lib/libc.so.0 \
>>>
>>> for usage with uClibc 0.9.33.2
>>>
>>> [...]
>>>
>>>> +          -Uoptimize
>>>
>>> Here I had to add "-Ud_eaccess" to avoid a compilation bug.
>>>
>>> Perl will still not finish to compile, stopping with this error message:
>>>
>>>> LD_LIBRARY_PATH=/home/bernd/.fbr/build/output/build/perl-5.16.1
>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>> ./miniperl -Ilib make_ext.pl cpan/Archive-Extract/pm_to_blib
>>> MAKE=/home/bernd/.fbr/build/output/host/usr/bin/make LIBPERL_A=libperl.so
>>>>         Making Archive::Extract (all)
>>>>
>>>> Creating Makefile.PL in cpan/Archive-Extract for Archive::Extract
>>>>
>>>> Running Makefile.PL in cpan/Archive-Extract
>>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>> ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none
>>> INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so
>>>> -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
>>>> Warning: No Makefile!
>>>> /home/bernd/.fbr/build/output/host/usr/bin/make config PERL_CORE=1
>>> LIBPERL_A=libperl.so failed, continuing anyway...
>>>> Making all in cpan/Archive-Extract
>>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>>> LIBPERL_A=libperl.so
>>>> Unsuccessful make(cpan/Archive-Extract): code=-1 at make_ext.pl line 468.
>>>> make[1]: *** [cpan/Archive-Extract/pm_to_blib] Fehler 22
>>>> make[1]: Leaving directory `/home/bernd/.fbr/build/output/build/perl-
>>> 5.16.1'
>>>> make: *** [/home/bernd/.fbr/build/output/build/perl-5.16.1/.stamp_built]
>>> Fehler 2
>>>
>>> Executing the last command alone provides this error hinting at a problem
>>> with host-qemu, which I was able to solve yet.
>>>
>>> $ /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>>> LIBPERL_A=libperl.so
>>> qemu: Unsupported syscall: 240
>>> qemu: Unsupported syscall: 240
>>>
>>> First I got this error message with Debian Squeeze i386 (virtualbox guest,
>>> Win XP host), but also on Debian wheezy amd64 running non-virtualized.
>>>
>>> My .config can be found here: http://pastebin.com/yz1SzeB2
>>> I am using buildroot as part of the FLI4L source package[1].
>>>
>>> Kind regards, Bernd
>>>
>>
>> I could reproduce the lastest problem on the HEAD of Buildroot with
>> qemu_x86_defconfig (which is a smaller config than your FLI4L config).
>>
>
> first, before manually running a command in the build tree, you must
> set PERL_MM_OPT
>    $ export PERL_MM_OPT="PERL=`pwd`/Cross/miniperl"
>
> the error
>     -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
> comes from miniperl which fails with a 'system' call.
>
> this problem could be reproduced with a simple one-liner :
>
> $ perl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
> hello
> 0
>
> $ Cross/miniperl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
> -1
>
> Fran?ois
>

after an installation on the target, this 'miniperl' works fine.
so, the problem comes from Qemu.

I write a small C example :

$ cat sys.c
#include <stdio.h>
#include <stdlib.h>

int main()
{
 	int ret = system("echo hello");
	printf("%d\n", ret);
}

$ ../../host/usr/bin/i686-buildroot-linux-uclibc-gcc -o sys sys.c
$ file sys
sys: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), not stripped
$ ../../host/usr/bin/qemu-i386 ./sys
-1

I also try on various architecture.
I build Perl successfully with qemu-arm and qemu-mips,
the problem occurs with qemu-i386 and qemu-x86_64,
with a qemu-i386 version 1.2.0 built with Buildroot and with a
qemu-i386 version 1.0.50 which comes my distro Ubuntu 12.04 LTS.

Other bad new, these days, the homepage of Qemu (http://wiki.qemu.org) is down.

Fran?ois

>> Fran?ois
>>
>>> [1] http://www.fli4l.de/download/tarball-version/aktuell.html
>>>
>>> _______________________________________________
>>> buildroot mailing list
>>> buildroot at busybox.net
>>> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06  1:05       ` Arnout Vandecappelle
  2012-11-06  7:08         ` Thomas Petazzoni
@ 2012-11-06 21:03         ` Bernd Kuhls
  1 sibling, 0 replies; 23+ messages in thread
From: Bernd Kuhls @ 2012-11-06 21:03 UTC (permalink / raw)
  To: buildroot

Arnout Vandecappelle <arnout@mind.be> wrote in 
news:50986270.4070804 at mind.be:

>   Is it possible that this is because the target binary is created with
> kernel headers 3.2, but you're running it on a host which is only 2.6.32
> (squeeze)?  But then it should work on wheezy, because that has 3.2 as
> well (at least since about four months IIRC).  Although...  240 on i386
> is futex, which has existed already since long before 2.6.32.

Hi,

on wheezy I am using kernel 3.5.5.

$ LC_ALL=C apt-cache policy linux-image-3.5-trunk-amd64
linux-image-3.5-trunk-amd64:
  Installed: 3.5.5-1~experimental.1
  Candidate: 3.5.5-1~experimental.1

Kind regards, Bernd

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06  7:08         ` Thomas Petazzoni
  2012-11-06 10:28           ` Alexander Khryukin
@ 2012-11-06 21:09           ` Bernd Kuhls
  2012-11-06 22:59             ` Arnout Vandecappelle
  1 sibling, 1 reply; 23+ messages in thread
From: Bernd Kuhls @ 2012-11-06 21:09 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni <thomas.petazzoni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8
@public.gmane.org> wrote in news:20121106080812.4e7bd01a at skate:

> I guess this whole qemu thing for Perl is going to be annoying on the
> long term. We might need to start looking for a different option, i.e
> seeing how to get Perl to build without needing qemu.

Hi,

maybe this can be of help: http://perlcross.berlios.de/

Kind regards, Bernd

PS: The reason I am fiddling around with Perl is to compile 
Mail::Spamassassin which needs a lot of other modules.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06 21:09           ` Bernd Kuhls
@ 2012-11-06 22:59             ` Arnout Vandecappelle
  2012-11-07 19:32               ` Bernd Kuhls
  0 siblings, 1 reply; 23+ messages in thread
From: Arnout Vandecappelle @ 2012-11-06 22:59 UTC (permalink / raw)
  To: buildroot

On 06/11/12 22:09, Bernd Kuhls wrote:
> Thomas Petazzoni<thomas.petazzoni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8
> @public.gmane.org>  wrote in news:20121106080812.4e7bd01a at skate:
>
>> I guess this whole qemu thing for Perl is going to be annoying on the
>> long term. We might need to start looking for a different option, i.e
>> seeing how to get Perl to build without needing qemu.
>
> Hi,
>
> maybe this can be of help: http://perlcross.berlios.de/

  That sounds like a terrific idea!  Do you feel up to integrating this in
buildroot and sending a patch?

  Regards,
  Arnout
-- 
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06 22:59             ` Arnout Vandecappelle
@ 2012-11-07 19:32               ` Bernd Kuhls
  2012-11-08 15:04                 ` Arnout Vandecappelle
  0 siblings, 1 reply; 23+ messages in thread
From: Bernd Kuhls @ 2012-11-07 19:32 UTC (permalink / raw)
  To: buildroot

Arnout Vandecappelle <arnout@mind.be> wrote in 
news:50999637.1090305 at mind.be:

>> maybe this can be of help: http://perlcross.berlios.de/
> 
>   That sounds like a terrific idea!  Do you feel up to integrating this in
> buildroot and sending a patch?

Unfortunately not due to lack of skill :(

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-07 19:32               ` Bernd Kuhls
@ 2012-11-08 15:04                 ` Arnout Vandecappelle
  0 siblings, 0 replies; 23+ messages in thread
From: Arnout Vandecappelle @ 2012-11-08 15:04 UTC (permalink / raw)
  To: buildroot

On 11/07/12 20:32, Bernd Kuhls wrote:
> Arnout Vandecappelle<arnout@mind.be>  wrote in
> news:50999637.1090305 at mind.be:
>
>>> maybe this can be of help: http://perlcross.berlios.de/
>>
>>    That sounds like a terrific idea!  Do you feel up to integrating this in
>> buildroot and sending a patch?
>
> Unfortunately not due to lack of skill :(

  In that case, I'll try to take a look at it this evening.

  We really need to get this perl mess fixed for the 2012.11 release...

  (Francois, with that I don't want to imply that you did a bad job. On the
contrary, getting the build with qemu running was an important step even if
it will have to be replaced eventually.)

  Regards,
  Arnout
-- 
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Buildroot] [PATCH v11 2/9] perl: new package
  2012-11-06 16:23         ` François Perrad
@ 2012-11-08 18:02           ` François Perrad
  0 siblings, 0 replies; 23+ messages in thread
From: François Perrad @ 2012-11-08 18:02 UTC (permalink / raw)
  To: buildroot

2012/11/6 Fran?ois Perrad <francois.perrad@gadz.org>:
> 2012/11/6 Fran?ois Perrad <francois.perrad@gadz.org>:
>> 2012/11/5 Fran?ois Perrad <francois.perrad@gadz.org>:
>>> 2012/10/30 Bernd Kuhls <berndkuhls@hotmail.com>:
>>>> Hi,
>>>>
>>>> Francois Perrad <fperrad@gmail.com> wrote in
>>>> news:1350652434-32020-2-git-send-email-francois.perrad at gadz.org:
>>>>
>>>> currently I am testing your patchset, but I found problems during
>>>> compiling, some I could solve myself:
>>>>
>>>>> +PERL_CONF_OPT = -des \
>>>>
>>>> [...]
>>>>
>>>>> +          -Dlibc=$(STAGING_DIR)/lib/libc.so \
>>>>
>>>> I had to change this line to
>>>>
>>>>              -Dlibc=$(STAGING_DIR)/usr/lib/libc.so.0 \
>>>>
>>>> for usage with uClibc 0.9.33.2
>>>>
>>>> [...]
>>>>
>>>>> +          -Uoptimize
>>>>
>>>> Here I had to add "-Ud_eaccess" to avoid a compilation bug.
>>>>
>>>> Perl will still not finish to compile, stopping with this error message:
>>>>
>>>>> LD_LIBRARY_PATH=/home/bernd/.fbr/build/output/build/perl-5.16.1
>>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>>> ./miniperl -Ilib make_ext.pl cpan/Archive-Extract/pm_to_blib
>>>> MAKE=/home/bernd/.fbr/build/output/host/usr/bin/make LIBPERL_A=libperl.so
>>>>>         Making Archive::Extract (all)
>>>>>
>>>>> Creating Makefile.PL in cpan/Archive-Extract for Archive::Extract
>>>>>
>>>>> Running Makefile.PL in cpan/Archive-Extract
>>>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>>> ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none
>>>> INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so
>>>>> -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
>>>>> Warning: No Makefile!
>>>>> /home/bernd/.fbr/build/output/host/usr/bin/make config PERL_CORE=1
>>>> LIBPERL_A=libperl.so failed, continuing anyway...
>>>>> Making all in cpan/Archive-Extract
>>>>> /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>>>> LIBPERL_A=libperl.so
>>>>> Unsuccessful make(cpan/Archive-Extract): code=-1 at make_ext.pl line 468.
>>>>> make[1]: *** [cpan/Archive-Extract/pm_to_blib] Fehler 22
>>>>> make[1]: Leaving directory `/home/bernd/.fbr/build/output/build/perl-
>>>> 5.16.1'
>>>>> make: *** [/home/bernd/.fbr/build/output/build/perl-5.16.1/.stamp_built]
>>>> Fehler 2
>>>>
>>>> Executing the last command alone provides this error hinting at a problem
>>>> with host-qemu, which I was able to solve yet.
>>>>
>>>> $ /home/bernd/.fbr/build/output/build/perl-5.16.1/Cross/run-qemu-i386
>>>> /home/bernd/.fbr/build/output/host/usr/bin/make all PERL_CORE=1
>>>> LIBPERL_A=libperl.so
>>>> qemu: Unsupported syscall: 240
>>>> qemu: Unsupported syscall: 240
>>>>
>>>> First I got this error message with Debian Squeeze i386 (virtualbox guest,
>>>> Win XP host), but also on Debian wheezy amd64 running non-virtualized.
>>>>
>>>> My .config can be found here: http://pastebin.com/yz1SzeB2
>>>> I am using buildroot as part of the FLI4L source package[1].
>>>>
>>>> Kind regards, Bernd
>>>>
>>>
>>> I could reproduce the lastest problem on the HEAD of Buildroot with
>>> qemu_x86_defconfig (which is a smaller config than your FLI4L config).
>>>
>>
>> first, before manually running a command in the build tree, you must
>> set PERL_MM_OPT
>>    $ export PERL_MM_OPT="PERL=`pwd`/Cross/miniperl"
>>
>> the error
>>     -1 from cpan/Archive-Extract's Makefile.PL at make_ext.pl line 409.
>> comes from miniperl which fails with a 'system' call.
>>
>> this problem could be reproduced with a simple one-liner :
>>
>> $ perl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
>> hello
>> 0
>>
>> $ Cross/miniperl -e "my \$code = system( q(echo), q(hello) ); print(\$code);"
>> -1
>>
>> Fran?ois
>>
>
> after an installation on the target, this 'miniperl' works fine.
> so, the problem comes from Qemu.
>
> I write a small C example :
>
> $ cat sys.c
> #include <stdio.h>
> #include <stdlib.h>
>
> int main()
> {
>         int ret = system("echo hello");
>         printf("%d\n", ret);
> }
>
> $ ../../host/usr/bin/i686-buildroot-linux-uclibc-gcc -o sys sys.c
> $ file sys
> sys: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
> dynamically linked (uses shared libs), not stripped
> $ ../../host/usr/bin/qemu-i386 ./sys
> -1
>
> I also try on various architecture.
> I build Perl successfully with qemu-arm and qemu-mips,
> the problem occurs with qemu-i386 and qemu-x86_64,
> with a qemu-i386 version 1.2.0 built with Buildroot and with a
> qemu-i386 version 1.0.50 which comes my distro Ubuntu 12.04 LTS.
>
> Other bad new, these days, the homepage of Qemu (http://wiki.qemu.org) is down.
>

bug report filled, see https://bugs.launchpad.net/qemu/+bug/1076445

Fran?ois

> Fran?ois
>
>>> Fran?ois
>>>
>>>> [1] http://www.fli4l.de/download/tarball-version/aktuell.html
>>>>
>>>> _______________________________________________
>>>> buildroot mailing list
>>>> buildroot at busybox.net
>>>> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2012-11-08 18:02 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-19 13:13 [Buildroot] [PATCH v11 1/9] host-qemu: new package Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 2/9] perl: " Francois Perrad
2012-10-30 20:20   ` Bernd Kuhls
2012-11-05 16:41     ` François Perrad
2012-11-06  1:05       ` Arnout Vandecappelle
2012-11-06  7:08         ` Thomas Petazzoni
2012-11-06 10:28           ` Alexander Khryukin
2012-11-06 21:09           ` Bernd Kuhls
2012-11-06 22:59             ` Arnout Vandecappelle
2012-11-07 19:32               ` Bernd Kuhls
2012-11-08 15:04                 ` Arnout Vandecappelle
2012-11-06 21:03         ` Bernd Kuhls
2012-11-06 10:24       ` François Perrad
2012-11-06 16:23         ` François Perrad
2012-11-08 18:02           ` François Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 3/9] perl: add DB_File Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 4/9] gdbm: new package Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 5/9] perl: add GDBM_File Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 6/9] perl: add option "custom install" Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 7/9] perl: prepare the removal of microperl Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 8/9] cpanminus: new package Francois Perrad
2012-10-19 13:13 ` [Buildroot] [PATCH v11 9/9] microperl: remove it Francois Perrad
2012-11-03 16:10 ` [Buildroot] [PATCH v11 1/9] host-qemu: new package Peter Korsgaard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.