* [Buildroot] [PATCH 1/2] Give the path to the realdelf binary the the packages
From: Peter Korsgaard @ 2012-11-07 23:01 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352300481-825-2-git-send-email-maxime.ripard@free-electrons.com>
>>>>> "Maxime" == Maxime Ripard <maxime.ripard@free-electrons.com> writes:
Committed with the commit message reworded, thanks.
Maxime> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [PATCH 1/1] qextserialport : fix download and bump version
From: Sagaert Johan @ 2012-11-07 22:59 UTC (permalink / raw)
To: buildroot
In-Reply-To: <874nl1avsi.fsf@dell.be.48ers.dk>
Hi
I enabled it because my customer will write his GUI software in QT, so I decided I would include it in the build.
I have no clue how to use it, but I think it encapsulates serial comm. The QT way with cross platform qt api's.
I did not try to build that package for my linux host.
Regards Johan
-----Oorspronkelijk bericht-----
Van: Peter Korsgaard [mailto:jacmet at gmail.com] Namens Peter Korsgaard
Verzonden: woensdag 7 november 2012 23:33
Aan: Sagaert Johan; thomas.petazzoni at free-electrons.com
CC: buildroot at busybox.net
Onderwerp: Re: [PATCH 1/1] qextserialport : fix download and bump version
>>>>> "Sagaert" == Sagaert Johan <sagaert.johan@skynet.be> writes:
Sagaert> Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
Thanks, but it still doesn't build with a base Qt config here as it tries to link with QtGui / QtNetwork, which imho doesn't make
much sense for a serial lib.
Now, I know next to nothing about qmake, but it is probably related to the windows version using QtGui.
Thomas, can you take a look at it?
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [git commit] TARGET_CONFIGURE_OPTS: pass READELF
From: Peter Korsgaard @ 2012-11-07 22:35 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=a32fa707e5d79c92908bb81142b00afe81a3e3e2
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Give the path to the realdelf binary for the target, similar to how we
do for the other tools.
[Peter: reworded]
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/Makefile.in | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/package/Makefile.in b/package/Makefile.in
index a939882..9fdc745 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -113,6 +113,7 @@ TARGET_FC = $(TARGET_CROSS)gfortran
TARGET_LD = $(TARGET_CROSS)ld
TARGET_NM = $(TARGET_CROSS)nm
TARGET_RANLIB = $(TARGET_CROSS)ranlib
+TARGET_READELF = $(TARGET_CROSS)readelf
TARGET_OBJCOPY = $(TARGET_CROSS)objcopy
TARGET_OBJDUMP = $(TARGET_CROSS)objdump
@@ -170,6 +171,7 @@ TARGET_CONFIGURE_OPTS=PATH=$(TARGET_PATH) \
CXX="$(TARGET_CXX)" \
FC="$(TARGET_FC)" \
RANLIB="$(TARGET_RANLIB)" \
+ READELF="$(TARGET_READELF)" \
STRIP="$(TARGET_STRIP)" \
OBJCOPY="$(TARGET_OBJCOPY)" \
OBJDUMP="$(TARGET_OBJDUMP)" \
^ permalink raw reply related
* [Buildroot] [PATCH 1/1] qextserialport : fix download and bump version
From: Peter Korsgaard @ 2012-11-07 22:32 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352317186-2905-1-git-send-email-sagaert.johan@skynet.be>
>>>>> "Sagaert" == Sagaert Johan <sagaert.johan@skynet.be> writes:
Sagaert> Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
Thanks, but it still doesn't build with a base Qt config here as it
tries to link with QtGui / QtNetwork, which imho doesn't make much sense
for a serial lib.
Now, I know next to nothing about qmake, but it is probably related to
the windows version using QtGui.
Thomas, can you take a look at it?
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [PATCH v2] package: add libpthsem
From: Arnout Vandecappelle @ 2012-11-07 21:51 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352192728-4816-1-git-send-email-gregory.hermant@calao-systems.com>
On 11/06/12 10:05, Gregory Hermant wrote:
> Signed-off-by: Gregory Hermant<gregory.hermant@calao-systems.com>
> +config BR2_PACKAGE_LIBPTHSEM
> + bool "libpthsem"
> + select BR2_PACKAGE_ARGP_STANDALONE
> + help
> + GNU pth is a user mode multi threading library. pthsem is an extend
> + version, with support for semaphores added.
If it is similar to pth, then it will probably not work on half our
architectures...
> +
> + http://www.auto.tuwien.ac.at/~mkoegler/pth/
[snip]
> diff --git a/package/libpthsem/libpthsem.mk b/package/libpthsem/libpthsem.mk
> new file mode 100644
> index 0000000..4fc9095
> --- /dev/null
> +++ b/package/libpthsem/libpthsem.mk
> @@ -0,0 +1,33 @@
> +#############################################################
> +#
> +# libpthsem
> +#
> +#############################################################
> +
> +LIBPTHSEM_VERSION = 2.0.8
> +LIBPTHSEM_SOURCE = pthsem_$(LIBPTHSEM_VERSION).tar.gz
> +LIBPTHSEM_SITE = http://www.auto.tuwien.ac.at/~mkoegler/pth/
> +LIBPTHSEM_LICENSE = LGPLv2.1+
> +LIBPTHSEM_LICENSE_FILES = COPYING
> +LIBPTHSEM_AUTORECONF = YES
> +LIBPTHSEM_INSTALL_STAGING = YES
> +LIBPTHSEM_DEPENDENCIES = argp-standalone
> +
> +define LIBPTHSEM_STAGING_LIBPTHSEM_CONFIG_FIXUP
> + $(SED) "s,^prefix=.*,prefix=\'$(STAGING_DIR)/usr\',g" $(STAGING_DIR)/usr/bin/pthsem-config
> + $(SED) "s,^exec_prefix=.*,exec_prefix=\'$(STAGING_DIR)/usr\',g" $(STAGING_DIR)/usr/bin/pthsem-config
The \' quotes are redundant here, no? And isn't one $(SED) enough if you
leave out the ^ in the beginning? Then prefix=.* will match both of them.
> +endef
> +
> +LIBPTHSEM_POST_INSTALL_STAGING_HOOKS += LIBPTHSEM_STAGING_LIBPTHSEM_CONFIG_FIXUP
> +
> +define LIBPTHSEM_REMOVE_CONFIG_SCRIPTS
> + $(RM) -f $(TARGET_DIR)/usr/bin/pthsem-config
> +endef
Good idea, I guess there are plenty of packages that should have this as well...
Regards,
Arnout
> +
> +ifneq ($(BR2_HAVE_DEVFILES),y)
> +LIBPTHSEM_POST_INSTALL_TARGET_HOOKS += LIBPTHSEM_REMOVE_CONFIG_SCRIPTS
> +endif
> +
> +
> +$(eval $(autotools-package))
> +
--
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
* [Buildroot] new perl build issue
From: Dan Pattison @ 2012-11-07 20:35 UTC (permalink / raw)
To: buildroot
In-Reply-To: <CABtOAfz849=H1gW+CNPL0AgtqQ3xpFZhdcCvycJ=hiEByTjxrQ@mail.gmail.com>
On 11/7/2012 1:53 AM, Alexander Khryukin wrote:
>
>
> 2012/11/7 Alexander Khryukin <alexander@mezon.ru
> <mailto:alexander@mezon.ru>>
>
>
>
> 2012/11/5 Fran?ois Perrad <francois.perrad@gadz.org
> <mailto:francois.perrad@gadz.org>>
>
> 2012/11/5 Alexander Khryukin <alexander@mezon.ru
> <mailto:alexander@mezon.ru>>:
> >
> >
> > 2012/11/5 Alexander Khryukin <alexander@mezon.ru
> <mailto:alexander@mezon.ru>>
> >>
> >>
> >>
> >> 2012/11/5 Thomas Petazzoni
> <thomas.petazzoni@free-electrons.com
> <mailto:thomas.petazzoni@free-electrons.com>>
> >>>
> >>>
> >>> On Sun, 4 Nov 2012 20:41:45 +0100, Fran?ois Perrad wrote:
> >>>
> >>> > this afternoon, Thomas has posted 3 patches for qemu (see
> >>> > http://patchwork.ozlabs.org/patch/197055/).
> >>> > Alexander, try to rebuild host-qemu with them.
> >>>
> >>> Unfortunately, none of those patches have a chance to fix
> Alexander's
> >>> problem. My patches only fix missing dependencies.
> >>>
> >>> Also, could you have a look at
> http://autobuild.buildroot.org/ for perl
> >>> build failures? It seems like Qemu doesn't start properly
> on some
> >>> platforms, for some reason.
> >>>
> >>> Thomas
> >>> --
> >>> Thomas Petazzoni, Free Electrons
> >>> Kernel, drivers, real-time and embedded Linux
> >>> development, consulting, training and support.
> >>> http://free-electrons.com
> >>
> >>
> >>
> >> I applied your patch but looks it not helps me.
> >>
> >> http://pastie.org/5188031
> >
> >
> >
> > Also if i compile it by my default system gcc it's ok
> >
> >
> > [fdkit at kvm-host UU]$ gcc try.c
> > [fdkit at kvm-host UU]$ ls ./a.out
> > ./a.out*
> > [fdkit at kvm-host UU]$ ./a.out
> > Ok
> >
>
> Alexander,
>
> the 'qemu-arm' built by Buildroot doesn't work properly.
> could you try this workaround ?
> 1) install a 'qemu-arm' with your distro package manager,
> $ apt-get install qemu-kvm-extras # or equivalent
> 2) apply this patch :
> --- a/package/perl/perl.mk <http://perl.mk>
> +++ b/package/perl/perl.mk <http://perl.mk>
> @@ -22,7 +22,7 @@ endif
>
> PERL_CONF_OPT = -des \
> -Dusecrosscompile \
> - -Dtargetrun=$(QEMU_USER) \
> + -Dtargetrun=qemu-arm \
> -Dqemulib=$(STAGING_DIR) \
> -Dar="$(TARGET_AR)" \
> -Dcc="$(TARGET_CC)" \
>
> Fran?ois
>
>
>
> I migrated my build system to fresh linux installation with 3.5.1
> kernel
> Linux localhost.localdomain 3.5.1-nrj-desktop-1mib #1 SMP PREEMPT
> Tue Aug 14 11:57:05 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
>
> Applied your patch, and problem still here.
>
> http://pastie.org/5336882
>
>
>
>
> Bump!
> I don't know how to solve it.
>
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Hello,
Like Bernd mentioned below. Using perlcross makes a successful build of
perl. I tried this in buildroot for target arm (AT91SAM9G20) with
success. Was able to run Hello World program and perl -V with no
problem. The perlcross patch only works for perl-5.16.0 right now. I was
thinking on adjusting it for perl-5.16.2.
My .configure line is pasted below. I use old version of buildroot so
you will need to edit the paths. I followed the instructions here:
http://perlcross.berlios.de/
./configure --target=arm-linux-uclibc \
--target-tools-prefix=/home/ethertek/rms200/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-
\
--prefix=/usr \
--sysroot=/home/ethertek/rms200/buildroot/build_arm/staging_dir/
<Hi,
<maybe this can be of help:http://perlcross.berlios.de/
<Kind regards, Bernd
Dan Pattison
Ethertek Circuits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20121107/0a901636/attachment-0001.html>
^ permalink raw reply
* [Buildroot] [PATCH] sstrip preserve permissions
From: Peter Korsgaard @ 2012-11-07 20:33 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1338083152-2359-1-git-send-email-danomimanchego123@gmail.com>
>>>>> "Danomi" == Danomi Manchego <danomimanchego123@gmail.com> writes:
Danomi> Unlike "strip", the "sstrip" does not preserve the file permissions
Danomi> of its target. So if you have a package that sets special permissions,
Danomi> such as the setuid bit, sstrip will remove it. This patch adds some
Danomi> minimal lines to preserve the permissions of stripped files.
What is the use case for this? From a quick look it seems sstrip just
truncates the source file, so permissions shouldn't change.
setuid (to root) doesn't make much sense as we're building as non-root
and fixing up permissions at the end using fakeroot (E.G. see
BUSYBOX_PERMISSIONS).
Danomi> Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Danomi> ---
Danomi> .../sstrip/sstrip-20154-preserve-permissions.patch | 43 ++++++++++++++++++++
Danomi> 1 file changed, 43 insertions(+)
Danomi> create mode 100644 package/sstrip/sstrip-20154-preserve-permissions.patch
Danomi> diff --git a/package/sstrip/sstrip-20154-preserve-permissions.patch b/package/sstrip/sstrip-20154-preserve-permissions.patch
Danomi> new file mode 100644
Danomi> index 0000000..0bd9162
Danomi> --- /dev/null
Danomi> +++ b/package/sstrip/sstrip-20154-preserve-permissions.patch
Danomi> @@ -0,0 +1,43 @@
Danomi> +diff -urN sstrip.ORIG/src/sstrip.c sstrip/src/sstrip.c
Danomi> +--- sstrip.ORIG/src/sstrip.c 2010-12-11 23:59:51.464374000 -0500
Danomi> ++++ sstrip/src/sstrip.c 2012-02-21 11:58:56.320295827 -0500
Danomi> +@@ -60,6 +60,10 @@
Danomi> + #include <fcntl.h>
Danomi> + #include <elf.h>
Danomi> +
Danomi> ++#include <sys/types.h>
Danomi> ++#include <sys/stat.h>
Danomi> ++#include <unistd.h>
Danomi> ++
Danomi> + #ifndef TRUE
Danomi> + #define TRUE 1
Danomi> + #define FALSE 0
Danomi> +@@ -427,6 +431,7 @@
Danomi> +
Danomi> + for (arg = argv + 1 ; *arg != NULL ; ++arg) {
Danomi> + filename = *arg;
Danomi> ++ struct stat sb;
Danomi> +
Danomi> + fd = open(*arg, O_RDWR);
Danomi> + if (fd < 0) {
Danomi> +@@ -435,6 +440,9 @@
Danomi> + continue;
Danomi> + }
Danomi> +
Danomi> ++ /* Get original file's permissions */
Danomi> ++ if (fstat(fd, &sb) == -1) { perror("fstat"); sb.st_mode = 0; }
Danomi> ++
Danomi> + switch (readelfheaderident(fd, &e.ehdr32)) {
Danomi> + case ELFCLASS32:
Danomi> + if (!(readelfheader32(fd, &e.ehdr32) &&
Danomi> +@@ -458,6 +466,10 @@
Danomi> + ++failures;
Danomi> + break;
Danomi> + }
Danomi> ++
Danomi> ++ /* Set original file's permissions, including setuid */
Danomi> ++ if (sb.st_mode != 0) { fchmod(fd, sb.st_mode & 07777); }
Danomi> ++
Danomi> + close(fd);
Danomi> + }
Danomi> +
Danomi> --
Danomi> 1.7.9.5
Danomi> _______________________________________________
Danomi> buildroot mailing list
Danomi> buildroot at busybox.net
Danomi> http://lists.busybox.net/mailman/listinfo/buildroot
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [PATCH 1/1] qextserialport : fix download and bump version
From: Sagaert Johan @ 2012-11-07 19:39 UTC (permalink / raw)
To: buildroot
Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
---
package/qextserialport/qextserialport-no-examples.patch | 17 -----------------
package/qextserialport/qextserialport.mk | 12 +++++++-----
2 files changed, 7 insertions(+), 22 deletions(-)
delete mode 100644 package/qextserialport/qextserialport-no-examples.patch
diff --git a/package/qextserialport/qextserialport-no-examples.patch b/package/qextserialport/qextserialport-no-examples.patch
deleted file mode 100644
index c7d2d41..0000000
--- a/package/qextserialport/qextserialport-no-examples.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Disable compilation of examples
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qextserialport-ef4af2a2ee3f/qextserialport.pro
-===================================================================
---- qextserialport-ef4af2a2ee3f.orig/qextserialport.pro
-+++ qextserialport-ef4af2a2ee3f/qextserialport.pro
-@@ -1,7 +1,4 @@
- #
- TEMPLATE = subdirs
- CONFIG += ordered
--SUBDIRS = src \
-- examples/enumerator \
-- examples/event
--
-+SUBDIRS = src
diff --git a/package/qextserialport/qextserialport.mk b/package/qextserialport/qextserialport.mk
index 6ffb9eb..f240cda 100644
--- a/package/qextserialport/qextserialport.mk
+++ b/package/qextserialport/qextserialport.mk
@@ -4,9 +4,11 @@
#
#############################################################
-QEXTSERIALPORT_VERSION = ef4af2a2ee3f
-QEXTSERIALPORT_SITE = https://qextserialport.googlecode.com/hg/
-QEXTSERIALPORT_SITE_METHOD = hg
+QEXTSERIALPORT_VERSION = f83b4e7ca922e53
+QEXTSERIALPORT_SITE = https://qextserialport.googlecode.com/git/
+QEXTSERIALPORT_SITE_METHOD = git
+
+QEXTSERIALPORT_LICENSE = MIT
QEXTSERIALPORT_DEPENDENCIES = qt
@@ -24,12 +26,12 @@ define QEXTSERIALPORT_INSTALL_STAGING_CMDS
mkdir -p $(STAGING_DIR)/usr/include/QExtSerialPort
cp $(@D)/src/*.h $(STAGING_DIR)/usr/include/QExtSerialPort/
cp $(@D)/src/QExtSerialPort $(STAGING_DIR)/usr/include/QExtSerialPort/
- cp -a $(@D)/src/build/*.so* $(STAGING_DIR)/usr/lib/
+ cp -a $(@D)/*.so* $(STAGING_DIR)/usr/lib/
cp $(@D)/qextserialport.pc $(STAGING_DIR)/usr/lib/pkgconfig/
endef
define QEXTSERIALPORT_INSTALL_TARGET_CMDS
- cp -a $(@D)/src/build/*.so.* $(TARGET_DIR)/usr/lib
+ cp -a $(@D)/*.so.* $(TARGET_DIR)/usr/lib
endef
$(eval $(generic-package))
--
1.8.0
^ permalink raw reply related
* [Buildroot] [PATCH 1/1] libmbus : bump version to 0.8
From: Peter Korsgaard @ 2012-11-07 19:39 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352164803-8201-1-git-send-email-sagaert.johan@skynet.be>
>>>>> "Sagaert" == Sagaert Johan <sagaert.johan@skynet.be> writes:
Sagaert> This release contains many improvements bug fixes, and major
Sagaert> new features and support for float point numbers and support
Sagaert> for multi-telegram communication...
Looks like we can also drop the autoreconf. Committed with that fixed,
thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [git commit] libmbus : bump version to 0.8
From: Peter Korsgaard @ 2012-11-07 19:38 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=d727a4da444cb0001f8b5f73e73809780542be65
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
This release contains many improvements bug fixes, and major new features and
support for float point numbers and support for multi-telegram communication...
[Peter: also drop autoreconf]
Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/libmbus/libmbus-bcopy.patch | 16 ----------------
package/libmbus/libmbus.mk | 6 +-----
2 files changed, 1 insertions(+), 21 deletions(-)
diff --git a/package/libmbus/libmbus-bcopy.patch b/package/libmbus/libmbus-bcopy.patch
deleted file mode 100644
index 660cc37..0000000
--- a/package/libmbus/libmbus-bcopy.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Drop bcopy since it's deprecated.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libmbus-0.7.0/mbus/mbus-tcp.c libmbus-0.7.0-bcopy/mbus/mbus-tcp.c
---- libmbus-0.7.0/mbus/mbus-tcp.c 2011-12-08 13:21:19.000000000 -0300
-+++ libmbus-0.7.0-bcopy/mbus/mbus-tcp.c 2012-05-03 09:08:36.987106612 -0300
-@@ -78,7 +78,7 @@
- return NULL;
- }
-
-- bcopy((void *)(host_addr->h_addr), (void *)(&s.sin_addr), host_addr->h_length);
-+ memmove((void *)(&s.sin_addr), (void *)(host_addr->h_addr), host_addr->h_length);
-
- if (connect(handle->sock, (struct sockaddr *)&s, sizeof(s)) < 0)
- {
diff --git a/package/libmbus/libmbus.mk b/package/libmbus/libmbus.mk
index 16e9e6a..b3cae97 100644
--- a/package/libmbus/libmbus.mk
+++ b/package/libmbus/libmbus.mk
@@ -4,12 +4,8 @@
#
#############################################################
-LIBMBUS_VERSION = 0.7.0
+LIBMBUS_VERSION = 0.8.0
LIBMBUS_SITE = http://www.freescada.com/public-dist
LIBMBUS_INSTALL_STAGING = YES
-# Without this the build yields an error:
-# cannot find input file: `test/Makefile.in'
-LIBMBUS_AUTORECONF = YES
-
$(eval $(autotools-package))
^ permalink raw reply related
* [Buildroot] [PATCH v11 2/9] perl: new package
From: Bernd Kuhls @ 2012-11-07 19:32 UTC (permalink / raw)
To: buildroot
In-Reply-To: <50999637.1090305@mind.be>
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
* [Buildroot] [PATCH 1/3] xapp_x11perf: bump to 1.5.4
From: Peter Korsgaard @ 2012-11-07 19:26 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352189274-7000-1-git-send-email-yegorslists@googlemail.com>
>>>>> "yegorslists" == yegorslists <yegorslists@googlemail.com> writes:
yegorslists> From: Yegor Yefremov <yegorslists@googlemail.com>
yegorslists> Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Committed all 3, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [git commit] xapp_bitmap: bump to 1.0.6
From: Peter Korsgaard @ 2012-11-07 19:26 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=242541fac2c5cfc750b0dc18ff92b9b08ae1f5c9
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/x11r7/xapp_bitmap/xapp_bitmap.mk | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/package/x11r7/xapp_bitmap/xapp_bitmap.mk b/package/x11r7/xapp_bitmap/xapp_bitmap.mk
index 92428ac..1ce450a 100644
--- a/package/x11r7/xapp_bitmap/xapp_bitmap.mk
+++ b/package/x11r7/xapp_bitmap/xapp_bitmap.mk
@@ -4,7 +4,7 @@
#
################################################################################
-XAPP_BITMAP_VERSION = 1.0.3
+XAPP_BITMAP_VERSION = 1.0.6
XAPP_BITMAP_SOURCE = bitmap-$(XAPP_BITMAP_VERSION).tar.bz2
XAPP_BITMAP_SITE = http://xorg.freedesktop.org/releases/individual/app
XAPP_BITMAP_DEPENDENCIES = xlib_libX11 xlib_libXaw xlib_libXmu xdata_xbitmaps
^ permalink raw reply related
* [Buildroot] [git commit] xapp_mkfontdir: bump to 1.0.7
From: Peter Korsgaard @ 2012-11-07 19:26 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=41a625c4b48db66ff626d65c524eaca71afcfd40
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk b/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk
index fa4e990..e32ed85 100644
--- a/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk
+++ b/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk
@@ -4,7 +4,7 @@
#
################################################################################
-XAPP_MKFONTDIR_VERSION = 1.0.6
+XAPP_MKFONTDIR_VERSION = 1.0.7
XAPP_MKFONTDIR_SOURCE = mkfontdir-$(XAPP_MKFONTDIR_VERSION).tar.bz2
XAPP_MKFONTDIR_SITE = http://xorg.freedesktop.org/releases/individual/app
XAPP_MKFONTDIR_DEPENDENCIES = xapp_mkfontscale
^ permalink raw reply related
* [Buildroot] [git commit] xapp_x11perf: bump to 1.5.4
From: Peter Korsgaard @ 2012-11-07 19:24 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=3432745d2a48ec80ad2d8b3b264ca4e8d607cd3a
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/x11r7/xapp_x11perf/xapp_x11perf.mk | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/package/x11r7/xapp_x11perf/xapp_x11perf.mk b/package/x11r7/xapp_x11perf/xapp_x11perf.mk
index d58a45c..33e8628 100644
--- a/package/x11r7/xapp_x11perf/xapp_x11perf.mk
+++ b/package/x11r7/xapp_x11perf/xapp_x11perf.mk
@@ -4,7 +4,7 @@
#
################################################################################
-XAPP_X11PERF_VERSION = 1.5.2
+XAPP_X11PERF_VERSION = 1.5.4
XAPP_X11PERF_SOURCE = x11perf-$(XAPP_X11PERF_VERSION).tar.bz2
XAPP_X11PERF_SITE = http://xorg.freedesktop.org/releases/individual/app
XAPP_X11PERF_DEPENDENCIES = xlib_libX11 xlib_libXmu xlib_libXft
^ permalink raw reply related
* [Buildroot] [PATCHv2 10/10] Make savedefconfig save to a configured file.
From: Arnout Vandecappelle @ 2012-11-07 19:24 UTC (permalink / raw)
To: buildroot
In-Reply-To: <509A1872.1040108@lucaceresoli.net>
On 11/07/12 09:14, Luca Ceresoli wrote:
>> +1. Set +BR2_DEFCONFIG+ to +<path-to-board-directory>/buildroot.config+
>
> I've always been saving my Buildroot board config in configs/, to allow
> me to startup from a clean working copy with a simple:
> make myboard_defconfig
This was actually in the out-of-buildroot-tree section. And I removed that
section completely, so it's irrelevant.
>
> The location you suggest requires a bit more typing, but it is probably
> cleaner, and it does not prevent me to continue my way... so:
>
> Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Thanks for all your acks. I've refreshed the patches, made some additional
fixes, and will repost right away.
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
* [Buildroot] [PATCH] iw: add license information
From: Peter Korsgaard @ 2012-11-07 19:22 UTC (permalink / raw)
To: buildroot
In-Reply-To: <505054B5.3080000@mimc.co.uk>
>>>>> "Mark" == Mark Jackson <mpfj-list@mimc.co.uk> writes:
Mark> Signed-off-by: Mark Jackson <mpfj@newflow.co.uk>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [PATCHv2 07/10] busybox: update-all-config shouldn't update default busybox config
From: Arnout Vandecappelle @ 2012-11-07 19:20 UTC (permalink / raw)
To: buildroot
In-Reply-To: <509A180C.2050409@lucaceresoli.net>
On 11/07/12 09:13, Luca Ceresoli wrote:
> Up to here you're automating the config filename handling, not doing
> anything related to update-config. It may be worth splitting the patch,
> although the changed lines are very few.
Since there's no reason for automating the config filename handling except
to enable the update-config, I don't think it's worth to split it.
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
* [Buildroot] [git commit] iw: add license information
From: Peter Korsgaard @ 2012-11-07 19:15 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=9e15babb4980abeaa4a392145989af11a757ba7d
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Signed-off-by: Mark Jackson <mpfj@newflow.co.uk>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/iw/iw.mk | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/package/iw/iw.mk b/package/iw/iw.mk
index 651a2ca..19ede3a 100644
--- a/package/iw/iw.mk
+++ b/package/iw/iw.mk
@@ -7,6 +7,8 @@
IW_VERSION = 3.7
IW_SOURCE = iw-$(IW_VERSION).tar.bz2
IW_SITE = http://wireless.kernel.org/download/iw
+IW_LICENSE = iw license
+IW_LICENSE_FILES = COPYING
IW_DEPENDENCIES = host-pkgconf libnl
IW_CONFIG = $(IW_DIR)/.config
IW_MAKE_ENV = PKG_CONFIG="$(HOST_DIR)/usr/bin/pkg-config" \
^ permalink raw reply related
* [Buildroot] [PATCH] gqview: Fix build failure due to missing -lm
From: Peter Korsgaard @ 2012-11-07 19:06 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1349555736-10008-1-git-send-email-gvaxon@gmail.com>
>>>>> "Valentine" == Valentine Barshak <gvaxon@gmail.com> writes:
Valentine> Signed-off-by: Valentine Barshak <gvaxon@gmail.com>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] [git commit] gqview: Fix build failure due to missing -lm with binutils 2.22
From: Peter Korsgaard @ 2012-11-07 19:05 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=c957f604d53d75e851370b6e0503388c93501e87
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Signed-off-by: Valentine Barshak <gvaxon@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Markos Chandras <markos.chandras@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
package/gqview/gqview.mk | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/package/gqview/gqview.mk b/package/gqview/gqview.mk
index e6d764d..6f64175 100644
--- a/package/gqview/gqview.mk
+++ b/package/gqview/gqview.mk
@@ -7,6 +7,7 @@ GQVIEW_VERSION = 2.1.5
GQVIEW_SOURCE = gqview-$(GQVIEW_VERSION).tar.gz
GQVIEW_SITE = http://prdownloads.sourceforge.net/gqview
GQVIEW_DEPENDENCIES = host-pkgconf libgtk2
+GQVIEW_CONF_ENV = LIBS="-lm"
$(eval $(autotools-package))
^ permalink raw reply related
* [Buildroot] [PATCH 1/1] calao: use zImage on usb-a9263 and usb-a9g20 lpw
From: Peter Korsgaard @ 2012-11-07 18:53 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1344003028-9452-1-git-send-email-plagnioj@jcrosoft.com>
>>>>> "J" == Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> writes:
J> The board boot more fast with a zImage than a uImage
J> as the kernel will not have to be relocated during the decompression.
J> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply
* [Buildroot] Udev on a live CD system does not appear to populate /dev
From: Stefan Fröberg @ 2012-11-07 17:56 UTC (permalink / raw)
To: buildroot
In-Reply-To: <5099A14C.5000204@mind.be>
7.11.2012 1:46, Arnout Vandecappelle kirjoitti:
> On 06/11/12 19:37, Stefan Fr?berg wrote:
>> Here's what I have minimally in my own buildroot's fs/skeleton/dev
>> folder (which is copied at the end of the buildroot
>> process into output/target/dev )
>
> Err... That can only work if you have sudo in your post-build script
> - which
> we consider bad practice. We have the device_table to deal with
> device nodes.
> And all of that shouldn't be necessary if you use devtmpfs (or udev or
> mdev,
> which implies devtmpfs). If you use static device nodes, then the
> default
> device_table_dev creates all of those.
>
Nope, no sudo in my live Cd.
Just few pre-made device nodes in fs/skeleton/dev and my special made
init stuff in fs/skeleton/etc/init.d
Well ok, I confess ... I *did* modify /etc/init.d/rcS a little bit for
my needs and also added unionfs mounting to S15mount
and some few other little things
So far I have been very happy with my own personal Live CD Linux distro.
It has 873 MB worth of various userspace utilities in 700 MB CD-R disc.
Feat which would have not been posible without initramfs (XZ
compressed), unionfs and squashfs.
The lowest RAM amount I managed to start it was 192 MB.
With Xorg, Fluxbox and Firefox :-)
Without buildroot and my lil tweakings I could have never made it.
Best regards
Stefan
> If that doesn't work for you, then we should try to fix it in buildroot.
>
> Regards,
> Arnout
^ permalink raw reply
* [Buildroot] [git commit] calao: use zImage on usb-a9263 and usb-a9g20 lpw
From: Peter Korsgaard @ 2012-11-07 17:18 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=b3c9b89bd97f8ed414fa7b6a479c37a3d68b616b
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
The board boot more fast with a zImage than a uImage
as the kernel will not have to be relocated during the decompression.
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
configs/calao_usb_a9263_defconfig | 1 +
configs/calao_usb_a9g20_lpw_defconfig | 1 +
2 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/configs/calao_usb_a9263_defconfig b/configs/calao_usb_a9263_defconfig
index 65263cf..422f35e 100644
--- a/configs/calao_usb_a9263_defconfig
+++ b/configs/calao_usb_a9263_defconfig
@@ -11,3 +11,4 @@ BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="usb_a9263"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/usb-a9263/linux-3.4.4.config"
+BR2_LINUX_KERNEL_ZIMAGE=y
diff --git a/configs/calao_usb_a9g20_lpw_defconfig b/configs/calao_usb_a9g20_lpw_defconfig
index e3d9cf5..4a644da 100644
--- a/configs/calao_usb_a9g20_lpw_defconfig
+++ b/configs/calao_usb_a9g20_lpw_defconfig
@@ -12,3 +12,4 @@ BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="usb_a9g20"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/usb-a9g20-lpw/linux-3.4.4.config"
+BR2_LINUX_KERNEL_ZIMAGE=y
^ permalink raw reply related
* [Buildroot] [PATCH 2/2] Add python3 package
From: Maxime Ripard @ 2012-11-07 15:01 UTC (permalink / raw)
To: buildroot
In-Reply-To: <1352300481-825-1-git-send-email-maxime.ripard@free-electrons.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
package/Config.in | 1 +
package/python3/Config.in | 81 ++++++++++
...n3-3.3-000-generate-sysconfigdata-buildir.patch | 158 ++++++++++++++++++++
.../python3-3.3-001-support-for-build.patch | 68 +++++++++
| 72 +++++++++
| 41 +++++
...n3-3.3-004-no-import-when-cross-compiling.patch | 27 ++++
...python3-3.3-005-do-not-generate-pyo-files.patch | 40 +++++
.../python3-3.3-006-reread-environment.patch | 63 ++++++++
...ython3-3.3-007-change-pyconfig-h-location.patch | 76 ++++++++++
package/python3/python3-3.3-008-no-rpath.patch | 51 +++++++
.../python3-3.3-009-verbose-module-build.patch | 26 ++++
...3-010-distutils-cross-compilation-support.patch | 71 +++++++++
...python3-3.3-011-cross-compile-getaddrinfo.patch | 21 +++
package/python3/python3.mk | 152 +++++++++++++++++++
15 files changed, 948 insertions(+)
create mode 100644 package/python3/Config.in
create mode 100644 package/python3/python3-3.3-000-generate-sysconfigdata-buildir.patch
create mode 100644 package/python3/python3-3.3-001-support-for-build.patch
create mode 100644 package/python3/python3-3.3-002-no-host-headers-libs.patch
create mode 100644 package/python3/python3-3.3-003-staging-header-libs.patch
create mode 100644 package/python3/python3-3.3-004-no-import-when-cross-compiling.patch
create mode 100644 package/python3/python3-3.3-005-do-not-generate-pyo-files.patch
create mode 100644 package/python3/python3-3.3-006-reread-environment.patch
create mode 100644 package/python3/python3-3.3-007-change-pyconfig-h-location.patch
create mode 100644 package/python3/python3-3.3-008-no-rpath.patch
create mode 100644 package/python3/python3-3.3-009-verbose-module-build.patch
create mode 100644 package/python3/python3-3.3-010-distutils-cross-compilation-support.patch
create mode 100644 package/python3/python3-3.3-011-cross-compile-getaddrinfo.patch
create mode 100644 package/python3/python3.mk
diff --git a/package/Config.in b/package/Config.in
index 6125abc..a9c1496 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -289,6 +289,7 @@ endif
source "package/microperl/Config.in"
source "package/php/Config.in"
source "package/python/Config.in"
+source "package/python3/Config.in"
if BR2_PACKAGE_PYTHON
menu "external python modules"
source "package/python-dpkt/Config.in"
diff --git a/package/python3/Config.in b/package/python3/Config.in
new file mode 100644
index 0000000..03c6b59
--- /dev/null
+++ b/package/python3/Config.in
@@ -0,0 +1,81 @@
+config BR2_PACKAGE_PYTHON3
+ bool "python3"
+ depends on BR2_USE_WCHAR
+ select BR2_PACKAGE_LIBFFI
+ help
+ The python language interpreter.
+
+ http://www.python.org/
+
+comment "python requires a toolchain with WCHAR support"
+ depends on !BR2_USE_WCHAR
+
+if BR2_PACKAGE_PYTHON3
+
+choice
+ prompt "python3 module format to install"
+ default BR2_PACKAGE_PYTHON3_PYC_ONLY
+ help
+ Select Python module format to install on target (py, pyc or both)
+
+config BR2_PACKAGE_PYTHON3_PY_ONLY
+ bool ".py sources only"
+
+config BR2_PACKAGE_PYTHON3_PYC_ONLY
+ bool ".pyc compiled sources only"
+
+config BR2_PACKAGE_PYTHON3_PY_PYC
+ bool ".py sources and .pyc compiled"
+
+endchoice
+
+menu "core python3 modules"
+
+comment "The following modules are unusual or require extra libraries"
+
+config BR2_PACKAGE_PYTHON3_BZIP2
+ select BR2_PACKAGE_BZIP2
+ bool "bz2 module"
+ help
+ bzip2 module for Python3
+
+config BR2_PACKAGE_PYTHON3_CURSES
+ select BR2_PACKAGE_NCURSES
+ bool "curses module"
+ help
+ curses module for Python3.
+
+config BR2_PACKAGE_PYTHON3_PYEXPAT
+ select BR2_PACKAGE_EXPAT
+ bool "pyexpat"
+ help
+ pyexpat module for Python3.
+
+config BR2_PACKAGE_PYTHON3_READLINE
+ select BR2_PACKAGE_READLINE
+ bool "readline"
+ help
+ readline module for Python3 (required for command-line
+ editing in the Python shell).
+
+config BR2_PACKAGE_PYTHON3_SSL
+ select BR2_PACKAGE_OPENSSL
+ bool "ssl"
+ help
+ _ssl module for Python3 (required for https in urllib etc).
+
+config BR2_PACKAGE_PYTHON3_SQLITE
+ bool "sqlite module"
+ select BR2_PACKAGE_SQLITE
+ help
+ SQLite database support
+
+config BR2_PACKAGE_PYTHON3_ZLIB
+ bool "zlib module"
+ select BR2_PACKAGE_ZLIB
+ help
+ zlib support in Python3
+
+endmenu
+
+endif
diff --git a/package/python3/python3-3.3-000-generate-sysconfigdata-buildir.patch b/package/python3/python3-3.3-000-generate-sysconfigdata-buildir.patch
new file mode 100644
index 0000000..a29aa0f
--- /dev/null
+++ b/package/python3/python3-3.3-000-generate-sysconfigdata-buildir.patch
@@ -0,0 +1,158 @@
+changeset: 79745:f85c3f4d9b98
+parent: 79743:36b2ca7dc893
+parent: 79744:24d52d3060e8
+user: Trent Nelson <trent@trent.me>
+date: Tue Oct 16 08:17:11 2012 -0400
+summary: Merge issue #15298: ensure _sysconfigdata is generated in build directory,
+
+Taken from upstream.
+
+---
+ Lib/sysconfig.py | 11 ++++++++++-
+ Makefile.pre.in | 24 +++++++++++++-----------
+ setup.py | 14 --------------
+ 3 files changed, 23 insertions(+), 26 deletions(-)
+
+Index: Python-3.3.0/Lib/sysconfig.py
+===================================================================
+--- Python-3.3.0.orig/Lib/sysconfig.py
++++ Python-3.3.0/Lib/sysconfig.py
+@@ -390,13 +390,22 @@
+ if _PYTHON_BUILD:
+ vars['LDSHARED'] = vars['BLDSHARED']
+
+- destfile = os.path.join(os.path.dirname(__file__), '_sysconfigdata.py')
++ pybuilddir = 'build/lib.%s-%s' % (get_platform(), sys.version[:3])
++ if hasattr(sys, "gettotalrefcount"):
++ pybuilddir += '-pydebug'
++ os.makedirs(pybuilddir, exist_ok=True)
++ destfile = os.path.join(pybuilddir, '_sysconfigdata.py')
++
+ with open(destfile, 'w', encoding='utf8') as f:
+ f.write('# system configuration generated and used by'
+ ' the sysconfig module\n')
+ f.write('build_time_vars = ')
+ pprint.pprint(vars, stream=f)
+
++ # Create file used for sys.path fixup -- see Modules/getpath.c
++ with open('pybuilddir.txt', 'w', encoding='ascii') as f:
++ f.write(pybuilddir)
++
+ def _init_posix(vars):
+ """Initialize the module as appropriate for POSIX systems."""
+ # _sysconfigdata is generated at build time, see _generate_posix_vars()
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -410,8 +410,6 @@
+ Objects/unicodectype.o \
+ Objects/weakrefobject.o
+
+-SYSCONFIGDATA=$(srcdir)/Lib/_sysconfigdata.py
+-
+ ##########################################################################
+ # objects that get linked into the Python library
+ LIBRARY_OBJS_OMIT_FROZEN= \
+@@ -432,7 +430,7 @@
+
+ # Default target
+ all: build_all
+-build_all: $(BUILDPYTHON) $(SYSCONFIGDATA) oldsharedmods sharedmods gdbhooks Modules/_testembed
++build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed
+
+ # Compile a binary with gcc profile guided optimization.
+ profile-opt:
+@@ -466,15 +464,17 @@
+ $(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
+ $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
+
+-platform: $(BUILDPYTHON) $(SYSCONFIGDATA)
++platform: $(BUILDPYTHON)
+ $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform
+
+-# Generate the sysconfig build-time data
+-$(SYSCONFIGDATA): $(BUILDPYTHON)
++# Create build directory and generate the sysconfig build-time data there.
++# pybuilddir.txt contains the name of the build dir and is used for
++# sys.path fixup -- see Modules/getpath.c.
++pybuilddir.txt: $(BUILDPYTHON)
+ $(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars
+
+ # Build the shared modules
+-sharedmods: $(BUILDPYTHON) $(SYSCONFIGDATA)
++sharedmods: $(BUILDPYTHON) pybuilddir.txt
+ case $$MAKEFLAGS in *s*) quiet=-q; esac; \
+ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
+@@ -1036,7 +1036,7 @@
+ else true; \
+ fi; \
+ done
+- @for i in $(srcdir)/Lib/*.py ; \
++ @for i in $(srcdir)/Lib/*.py `cat pybuilddir.txt`/_sysconfigdata.py; \
+ do \
+ if test -x $$i; then \
+ $(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \
+@@ -1196,6 +1196,8 @@
+ --install-scripts=$(BINDIR) \
+ --install-platlib=$(DESTSHARED) \
+ --root=$(DESTDIR)/
++ -rm $(DESTDIR)$(DESTSHARED)/_sysconfigdata.py
++ -rm -r $(DESTDIR)$(DESTSHARED)/__pycache__
+
+ # Here are a couple of targets for MacOSX again, to install a full
+ # framework-based Python. frameworkinstall installs everything, the
+@@ -1341,9 +1343,10 @@
+ find . -name '*.s[ol]' -exec rm -f {} ';'
+ find . -name '*.so.[0-9]*.[0-9]*' -exec rm -f {} ';'
+ find build -name 'fficonfig.h' -exec rm -f {} ';' || true
+- find build -name 'fficonfig.py' -exec rm -f {} ';' || true
++ find build -name '*.py' -exec rm -f {} ';' || true
++ find build -name '*.py[co]' -exec rm -f {} ';' || true
++ -rm -f pybuilddir.txt
+ -rm -f Lib/lib2to3/*Grammar*.pickle
+- -rm -f $(SYSCONFIGDATA)
+ -rm -f Modules/_testembed Modules/_freeze_importlib
+
+ profile-removal:
+@@ -1367,7 +1370,6 @@
+ Modules/Setup Modules/Setup.local Modules/Setup.config \
+ Modules/ld_so_aix Modules/python.exp Misc/python.pc
+ -rm -f python*-gdb.py
+- -rm -f pybuilddir.txt
+ find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
+ -o -name '[@,#]*' -o -name '*.old' \
+ -o -name '*.orig' -o -name '*.rej' \
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -33,10 +33,6 @@
+ # This global variable is used to hold the list of modules to be disabled.
+ disabled_module_list = []
+
+-# File which contains the directory for shared mods (for sys.path fixup
+-# when running from the build dir, see Modules/getpath.c)
+-_BUILDDIR_COOKIE = "pybuilddir.txt"
+-
+ def add_dir_to_list(dirlist, dir):
+ """Add the directory 'dir' to the list 'dirlist' (after any relative
+ directories) if:
+@@ -252,16 +248,6 @@
+ args['compiler_so'] = compiler + ' ' + ccshared + ' ' + cflags
+ self.compiler.set_executables(**args)
+
+- # Not only do we write the builddir cookie, but we manually install
+- # the shared modules directory if it isn't already in sys.path.
+- # Otherwise trying to import the extensions after building them
+- # will fail.
+- with open(_BUILDDIR_COOKIE, "wb") as f:
+- f.write(self.build_lib.encode('utf-8', 'surrogateescape'))
+- abs_build_lib = os.path.join(os.getcwd(), self.build_lib)
+- if abs_build_lib not in sys.path:
+- sys.path.append(abs_build_lib)
+-
+ build_ext.build_extensions(self)
+
+ longest = max([len(e.name) for e in self.extensions])
diff --git a/package/python3/python3-3.3-001-support-for-build.patch b/package/python3/python3-3.3-001-support-for-build.patch
new file mode 100644
index 0000000..8c57cfb
--- /dev/null
+++ b/package/python3/python3-3.3-001-support-for-build.patch
@@ -0,0 +1,68 @@
+Add support in Python build system to specify host pgen
+
+Python needs a "pgen" program to build itself. Unfortunately, the
+Python build system assumes that it can use the pgen program it has
+just built to build itself. Obviously, this cannot work in
+cross-compilation mode since the pgen program have been built for the
+target.
+
+Therefore, this patch adds support in the Python build system for the
+new PGEN_FOR_BUILD variable, so that we can point Python ./configure
+script to the pgen program that have been previously built for the
+host.
+
+Patch ported to python2.7 by Maxime Ripard <ripard@archos.com>, and
+later significantly reworked by Thomas Petazzoni
+<thomas.petazzoni@free-electrons.com>, with some inspiration taken
+from the Python patches of the PTXdist project, and then ported to
+python3.3 by Maxime Ripard <maxime.ripard@free-electrons.com>
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ Makefile.pre.in | 5 +++--
+ configure.ac | 5 +++++
+ 2 files changed, 8 insertions(+), 2 deletions(-)
+
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -239,6 +239,7 @@
+ ##########################################################################
+ # Parser
+ PGEN= Parser/pgen$(EXE)
++PGEN_FOR_BUILD=@PGEN_FOR_BUILD@
+
+ PSRCS= \
+ Parser/acceler.c \
+@@ -639,8 +640,8 @@
+
+ $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGENSRCS)
+ @$(MKDIR_P) Include
+- $(MAKE) $(PGEN)
+- $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
++ $(MAKE) $(PGEN_FOR_BUILD)
++ $(PGEN_FOR_BUILD) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
+ $(GRAMMAR_C): $(GRAMMAR_H) $(GRAMMAR_INPUT) $(PGENSRCS)
+ $(MAKE) $(GRAMMAR_H)
+ touch $(GRAMMAR_C)
+Index: Python-3.3.0/configure.ac
+===================================================================
+--- Python-3.3.0.orig/configure.ac
++++ Python-3.3.0/configure.ac
+@@ -51,10 +51,15 @@
+ AC_MSG_RESULT($interp)
+ PYTHON_FOR_BUILD="_PYTHON_PROJECT_BASE=$srcdir"' _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(srcdir)/Lib:$(srcdir)/Lib/plat-$(MACHDEP) '$interp
+ fi
++ AC_MSG_CHECKING(pgen for build)
++ PGEN_FOR_BUILD="${PGEN_FOR_BUILD}"
++ AC_MSG_RESULT($PGEN_FOR_BUILD)
+ else
+ PYTHON_FOR_BUILD='./$(BUILDPYTHON) -E'
++ PGEN_FOR_BUILD='./$(PGEN)'
+ fi
+ AC_SUBST(PYTHON_FOR_BUILD)
++AC_SUBST(PGEN_FOR_BUILD)
+
+ dnl Ensure that if prefix is specified, it does not end in a slash. If
+ dnl it does, we get path names containing '//' which is both ugly and
--git a/package/python3/python3-3.3-002-no-host-headers-libs.patch b/package/python3/python3-3.3-002-no-host-headers-libs.patch
new file mode 100644
index 0000000..9783f28
--- /dev/null
+++ b/package/python3/python3-3.3-002-no-host-headers-libs.patch
@@ -0,0 +1,72 @@
+Do not look at host headers/libraries in cross-compile mode
+
+When we are cross-compiling, setup.py should never look in /usr or
+/usr/local to find headers or libraries. A later patch adds a
+mechanism to tell setup.py to look in a specific directory for headers
+and libraries.
+
+Patch first written by Thomas Petazzoni
+<thomas.petazzoni@free-electrons.com> for python2.7, and then ported
+to python3.3 by Maxime Ripard <maxime.ripard@free-electrons.com>
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ setup.py | 23 +++++------------------
+ 1 file changed, 5 insertions(+), 18 deletions(-)
+
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -447,10 +447,8 @@
+ if not cross_compiling:
+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
+ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
+- # only change this for cross builds for 3.3, issues on Mageia
+- if cross_compiling:
+ self.add_gcc_paths()
+- self.add_multiarch_paths()
++ self.add_multiarch_paths()
+
+ # Add paths specified in the environment variables LDFLAGS and
+ # CPPFLAGS for header and library files.
+@@ -458,10 +456,7 @@
+ # directly since an inconsistently reproducible issue comes up where
+ # the environment variable is not set even though the value were passed
+ # into configure and stored in the Makefile (issue found on OS X 10.3).
+- for env_var, arg_name, dir_list in (
+- ('LDFLAGS', '-R', self.compiler.runtime_library_dirs),
+- ('LDFLAGS', '-L', self.compiler.library_dirs),
+- ('CPPFLAGS', '-I', self.compiler.include_dirs)):
++ for env_var, arg_name, dir_list in ():
+ env_val = sysconfig.get_config_var(env_var)
+ if env_val:
+ # To prevent optparse from raising an exception about any
+@@ -486,17 +481,6 @@
+ for directory in reversed(options.dirs):
+ add_dir_to_list(dir_list, directory)
+
+- if os.path.normpath(sys.base_prefix) != '/usr' \
+- and not sysconfig.get_config_var('PYTHONFRAMEWORK'):
+- # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework
+- # (PYTHONFRAMEWORK is set) to avoid # linking problems when
+- # building a framework with different architectures than
+- # the one that is currently installed (issue #7473)
+- add_dir_to_list(self.compiler.library_dirs,
+- sysconfig.get_config_var("LIBDIR"))
+- add_dir_to_list(self.compiler.include_dirs,
+- sysconfig.get_config_var("INCLUDEDIR"))
+-
+ # lib_dirs and inc_dirs are used to search for files;
+ # if a file is found in one of those directories, it can
+ # be assumed that no additional -I,-L directives are needed.
+@@ -506,6 +490,9 @@
+ '/lib', '/usr/lib',
+ ]
+ inc_dirs = self.compiler.include_dirs + ['/usr/include']
++ else:
++ lib_dirs = self.compiler.library_dirs
++ inc_dirs = self.compiler.include_dirs
+ exts = []
+ missing = []
+
--git a/package/python3/python3-3.3-003-staging-header-libs.patch b/package/python3/python3-3.3-003-staging-header-libs.patch
new file mode 100644
index 0000000..b0efe29
--- /dev/null
+++ b/package/python3/python3-3.3-003-staging-header-libs.patch
@@ -0,0 +1,41 @@
+Tell setup.py the location of headers/libraries
+
+Allow the libraries detection routine to look for headers and libs in
+other directories than /usr/include or /usr/lib through the
+environment variables PYTHON_MODULES_INCLUDE and PYTHON_MODULES_LIB.
+
+We can then use it to look for libraries in the buildroot staging
+directory.
+
+Ported to python3.3 by Maxime Ripard <maxime.ripard@free-electrons.com> based
+on the work by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ setup.py | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -441,6 +441,19 @@
+ os.unlink(tmpfile)
+
+ def detect_modules(self):
++ try:
++ modules_include_dirs = os.environ["PYTHON_MODULES_INCLUDE"].split()
++ except KeyError:
++ modules_include_dirs = ['/usr/include']
++ try:
++ modules_lib_dirs = os.environ["PYTHON_MODULES_LIB"].split()
++ except KeyError:
++ modules_lib_dirs = ['/usr/lib']
++ for dir in modules_include_dirs:
++ add_dir_to_list(self.compiler.include_dirs, dir)
++ for dir in modules_lib_dirs:
++ add_dir_to_list(self.compiler.library_dirs, dir)
++
+ # Ensure that /usr/local is always used, but the local build
+ # directories (i.e. '.' and 'Include') must be first. See issue
+ # 10520.
diff --git a/package/python3/python3-3.3-004-no-import-when-cross-compiling.patch b/package/python3/python3-3.3-004-no-import-when-cross-compiling.patch
new file mode 100644
index 0000000..cd5a437
--- /dev/null
+++ b/package/python3/python3-3.3-004-no-import-when-cross-compiling.patch
@@ -0,0 +1,27 @@
+Disable import check when cross-compiling
+
+Once Python has compiled an extension (i.e some C code, potentially
+linked to a library), it tries to import it. This cannot work in
+cross-compilation mode, so we just disable this check.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ setup.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -318,6 +318,10 @@
+ self.announce('WARNING: skipping import check for Cygwin-based "%s"'
+ % ext.name)
+ return
++ if os.environ.get('CROSS_COMPILING') == 'yes':
++ self.announce('WARNING: skipping import check for cross compiled "%s"'
++ % ext.name)
++ return
+ ext_filename = os.path.join(
+ self.build_lib,
+ self.get_ext_filename(self.get_ext_fullname(ext.name)))
diff --git a/package/python3/python3-3.3-005-do-not-generate-pyo-files.patch b/package/python3/python3-3.3-005-do-not-generate-pyo-files.patch
new file mode 100644
index 0000000..983d546
--- /dev/null
+++ b/package/python3/python3-3.3-005-do-not-generate-pyo-files.patch
@@ -0,0 +1,40 @@
+Do not generate .pyo files
+
+By default, the Python installation byte-compiles all modules in two
+forms: the normal bytecode (.pyc) and an optimized bytecode (.pyo).
+
+According to
+http://www.network-theory.co.uk/docs/pytut/CompiledPythonfiles.html,
+the optimization do not do anything useful, and generating both the
+"non-optimized" and "optimized" bytecode variants takes time.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.pre.in | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -1082,20 +1082,11 @@
+ -d $(LIBDEST) -f \
+ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
+ $(DESTDIR)$(LIBDEST)
+- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+- $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
+- -d $(LIBDEST) -f \
+- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
+- $(DESTDIR)$(LIBDEST)
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
+ -d $(LIBDEST)/site-packages -f \
+ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+- $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
+- -d $(LIBDEST)/site-packages -f \
+- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
+- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt
diff --git a/package/python3/python3-3.3-006-reread-environment.patch b/package/python3/python3-3.3-006-reread-environment.patch
new file mode 100644
index 0000000..752b15a
--- /dev/null
+++ b/package/python3/python3-3.3-006-reread-environment.patch
@@ -0,0 +1,63 @@
+Make sure setup.py reads the correct CONFIG_ARGS
+
+The setup.py script that builds and installs all the Python modules
+shipped with the interpreter looks at the CONFIG_ARGS variable stored
+in the "sysconfig" module to look at the ./configure options and
+adjust its behaviour accordingly.
+
+Unfortunately, when cross-compiling, the value of CONFIG_ARGS returned
+by the sysconfig are the one passed to the ./configure script of the
+*host* Python and not the one we're currently building for the target.
+
+In order to avoid that, we re-initialize the values in the sysconfig
+module by re-reading the environment at the beginning of the setup.py
+script, and we make sure that the CONFIG_ARGS variable is actually
+part of the environment of setup.py.
+
+See the beginning of
+http://article.gmane.org/gmane.comp.python.devel/99772 for the
+inspiration.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+---
+ Makefile.pre.in | 4 +++-
+ setup.py | 3 +++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -30,6 +30,9 @@
+ # Were we compiled --with-pydebug or with #define Py_DEBUG?
+ COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
+
++sysconfig.get_config_vars()
++sysconfig._CONFIG_VARS.update(os.environ)
++
+ # This global variable is used to hold the list of modules to be disabled.
+ disabled_module_list = []
+
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -478,6 +478,7 @@
+ sharedmods: $(BUILDPYTHON) pybuilddir.txt
+ case $$MAKEFLAGS in *s*) quiet=-q; esac; \
+ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
++ CONFIG_ARGS="$(CONFIG_ARGS)" \
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
+
+ # Build static library
+@@ -1183,7 +1184,8 @@
+ # Install the dynamically loadable modules
+ # This goes into $(exec_prefix)
+ sharedinstall: sharedmods
+- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
++ $(RUNSHARED) CONFIG_ARGS="$(CONFIG_ARGS)" \
++ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
+ --prefix=$(prefix) \
+ --install-scripts=$(BINDIR) \
+ --install-platlib=$(DESTSHARED) \
diff --git a/package/python3/python3-3.3-007-change-pyconfig-h-location.patch b/package/python3/python3-3.3-007-change-pyconfig-h-location.patch
new file mode 100644
index 0000000..8d45dae
--- /dev/null
+++ b/package/python3/python3-3.3-007-change-pyconfig-h-location.patch
@@ -0,0 +1,76 @@
+Change the location of pyconfig.h
+
+The Python interpreter has a really strange behaviour: at *runtime*,
+it reads a Makefile and a header file named pyconfig.h to get some
+information about the configuration.
+
+The Makefile is located in usr/lib/python3.3/config-3.3m, which is fine
+since this location is kept on the target.
+
+However, by default, the pyconfig.h is installed in
+usr/include/python3.3m, but we completely remove the usr/include
+directory for the target. Since making an exception just for
+pyconfig.h is annoying, this patch also installs pyconfig.h to
+usr/lib/python3.3/config-3.3m, and modifies the sysconfig module so that it
+looks in this location instead of usr/include.
+
+The pyconfig.h is still kept in usr/include/python3.3m, because it is
+needed in the $(STAGING_DIR) when building third-party Python
+extensions that contain C code.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+---
+ Lib/distutils/sysconfig.py | 3 ++-
+ Lib/sysconfig.py | 2 +-
+ Makefile.pre.in | 3 ++-
+ 3 files changed, 5 insertions(+), 3 deletions(-)
+
+Index: Python-3.3.0/Lib/distutils/sysconfig.py
+===================================================================
+--- Python-3.3.0.orig/Lib/distutils/sysconfig.py
++++ Python-3.3.0/Lib/distutils/sysconfig.py
+@@ -239,7 +239,8 @@
+ else:
+ inc_dir = _sys_home or project_base
+ else:
+- inc_dir = get_python_inc(plat_specific=1)
++ lib_dir = get_python_lib(plat_specific=1, standard_lib=1)
++ inc_dir = os.path.join(lib_dir, "config")
+ if get_python_version() < '2.2':
+ config_h = 'config.h'
+ else:
+Index: Python-3.3.0/Lib/sysconfig.py
+===================================================================
+--- Python-3.3.0.orig/Lib/sysconfig.py
++++ Python-3.3.0/Lib/sysconfig.py
+@@ -467,7 +467,7 @@
+ else:
+ inc_dir = _sys_home or _PROJECT_BASE
+ else:
+- inc_dir = get_path('platinclude')
++ inc_dir = os.path.join(get_path('stdlib'), "config")
+ return os.path.join(inc_dir, 'pyconfig.h')
+
+
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -1123,7 +1123,6 @@
+ echo $(INSTALL_DATA) $$i $(INCLUDEPY); \
+ $(INSTALL_DATA) $$i $(DESTDIR)$(INCLUDEPY); \
+ done
+- $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h
+
+ # Install the library and miscellaneous stuff needed for extending/embedding
+ # This goes into $(exec_prefix)
+@@ -1157,6 +1156,8 @@
+ $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o
+ $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
+ $(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile
++ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(LIBPL)/pyconfig.h
++ $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h
+ $(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup
+ $(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local
+ $(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config
diff --git a/package/python3/python3-3.3-008-no-rpath.patch b/package/python3/python3-3.3-008-no-rpath.patch
new file mode 100644
index 0000000..cdeec22
--- /dev/null
+++ b/package/python3/python3-3.3-008-no-rpath.patch
@@ -0,0 +1,51 @@
+Remove runtime library paths
+
+For some extensions (sqlite and dbm), Python setup.py script
+hardcode a runtime path (rpath) into the extension. However, this
+runtime path is incorrect (because it points to the location of the
+library directory on the development machine) and useless (because on
+the target, all useful libraries are in a standard directory searched
+by the dynamic loader). For those reasons, we just get rid of the
+runtime paths in cross-compilation mode.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ setup.py | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+Index: Python-3.3.0/setup.py
+===================================================================
+--- Python-3.3.0.orig/setup.py
++++ Python-3.3.0/setup.py
+@@ -1134,11 +1134,15 @@
+ # can end up with a bad search path order.
+ if sqlite_incdir not in self.compiler.include_dirs:
+ include_dirs.append(sqlite_incdir)
++ if cross_compiling:
++ sqlite_runtime_libdir = None
++ else:
++ sqlite_runtime_libdir = sqlite_libdir
+ exts.append(Extension('_sqlite3', sqlite_srcs,
+ define_macros=sqlite_defines,
+ include_dirs=include_dirs,
+ library_dirs=sqlite_libdir,
+- runtime_library_dirs=sqlite_libdir,
++ runtime_library_dirs=sqlite_runtime_libdir,
+ extra_link_args=sqlite_extra_link_args,
+ libraries=["sqlite3",]))
+ else:
+@@ -1205,9 +1209,13 @@
+ elif cand == "bdb":
+ if db_incs is not None:
+ if dbm_setup_debug: print("building dbm using bdb")
++ if cross_compiling:
++ dblib_runtime_libdir = None
++ else:
++ dblib_runtime_libdir = dblib_dir
+ dbmext = Extension('_dbm', ['_dbmmodule.c'],
+ library_dirs=dblib_dir,
+- runtime_library_dirs=dblib_dir,
++ runtime_library_dirs=dblib_runtime_libdir,
+ include_dirs=db_incs,
+ define_macros=[
+ ('HAVE_BERKDB_H', None),
diff --git a/package/python3/python3-3.3-009-verbose-module-build.patch b/package/python3/python3-3.3-009-verbose-module-build.patch
new file mode 100644
index 0000000..60b6d79
--- /dev/null
+++ b/package/python3/python3-3.3-009-verbose-module-build.patch
@@ -0,0 +1,26 @@
+Enables verbose output when building modules
+
+Patch borrowed from OpenBricks.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+---
+ Makefile.pre.in | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+Index: Python-3.3.0/Makefile.pre.in
+===================================================================
+--- Python-3.3.0.orig/Makefile.pre.in
++++ Python-3.3.0/Makefile.pre.in
+@@ -476,10 +476,9 @@
+
+ # Build the shared modules
+ sharedmods: $(BUILDPYTHON) pybuilddir.txt
+- case $$MAKEFLAGS in *s*) quiet=-q; esac; \
+ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
+ CONFIG_ARGS="$(CONFIG_ARGS)" \
+- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
++ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py build
+
+ # Build static library
+ # avoid long command lines, same as LIBRARY_OBJS
diff --git a/package/python3/python3-3.3-010-distutils-cross-compilation-support.patch b/package/python3/python3-3.3-010-distutils-cross-compilation-support.patch
new file mode 100644
index 0000000..0a51400
--- /dev/null
+++ b/package/python3/python3-3.3-010-distutils-cross-compilation-support.patch
@@ -0,0 +1,71 @@
+Add some cross-compilation fixes to distutils
+
+Inspired by work done by Marc Kleine-Budde <mkl@pengutronix.de> in
+PTXdist.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Lib/distutils/sysconfig.py | 17 +++++++++++++----
+ configure.ac | 8 +++++++-
+ 2 files changed, 20 insertions(+), 5 deletions(-)
+
+Index: Python-3.3.0/Lib/distutils/sysconfig.py
+===================================================================
+--- Python-3.3.0.orig/Lib/distutils/sysconfig.py
++++ Python-3.3.0/Lib/distutils/sysconfig.py
+@@ -16,15 +16,24 @@
+ from .errors import DistutilsPlatformError
+
+ # These are needed in a couple of spots, so just compute them once.
+-PREFIX = os.path.normpath(sys.prefix)
+-EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
++EXECUTABLE_DIRNAME = os.path.dirname(os.path.realpath(sys.executable))
++if os.environ.get('CROSS_COMPILING') == 'yes':
++ _sysroot=os.environ.get('_python_sysroot')
++ PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_prefix'))
++ EXEC_PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_exec_prefix'))
++ if '_python_srcdir' in os.environ:
++ EXECUTABLE_DIRNAME = os.path.normpath(os.environ['_python_srcdir'])
++else:
++ PREFIX = os.path.normpath(sys.prefix)
++ EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
++
+ BASE_PREFIX = os.path.normpath(sys.base_prefix)
+ BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix)
+
+ # Path to the base directory of the project. On Windows the binary may
+ # live in project/PCBuild9. If we're dealing with an x64 Windows build,
+ # it'll live in project/PCbuild/amd64.
+-project_base = os.path.dirname(os.path.abspath(sys.executable))
++project_base = EXECUTABLE_DIRNAME
+ if os.name == "nt" and "pcbuild" in project_base[-8:].lower():
+ project_base = os.path.abspath(os.path.join(project_base, os.path.pardir))
+ # PC/VS7.1
+@@ -98,7 +107,7 @@
+ # the build directory may not be the source directory, we
+ # must use "srcdir" from the makefile to find the "Include"
+ # directory.
+- base = _sys_home or os.path.dirname(os.path.abspath(sys.executable))
++ base = _sys_home or EXECUTABLE_DIRNAME
+ if plat_specific:
+ return base
+ if _sys_home:
+Index: Python-3.3.0/configure.ac
+===================================================================
+--- Python-3.3.0.orig/configure.ac
++++ Python-3.3.0/configure.ac
+@@ -963,7 +963,13 @@
+ fi
+
+ if test "$cross_compiling" = yes; then
+- RUNSHARED=
++ RUNSHARED=" \
++ CROSS_COMPILING=yes \
++ _python_cross_host=${ac_cv_host} \
++ _python_sysroot=\"\$(sysroot)\" \
++ _python_srcdir=\"\$(srcdir)\" \
++ _python_prefix=\"\$(prefix)\" \
++ _python_exec_prefix=\"\$(exec_prefix)\""
+ fi
+
+ AC_MSG_RESULT($LDLIBRARY)
diff --git a/package/python3/python3-3.3-011-cross-compile-getaddrinfo.patch b/package/python3/python3-3.3-011-cross-compile-getaddrinfo.patch
new file mode 100644
index 0000000..33286ce
--- /dev/null
+++ b/package/python3/python3-3.3-011-cross-compile-getaddrinfo.patch
@@ -0,0 +1,21 @@
+Disable buggy_getaddrinfo configure test when cross-compiling with IPv6 support
+
+Signed-off-by: Vanya Sergeev <vsergeev@gmail.com>
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: Python-3.3.0/configure.ac
+===================================================================
+--- Python-3.3.0.orig/configure.ac
++++ Python-3.3.0/configure.ac
+@@ -3204,7 +3204,7 @@
+
+ AC_MSG_RESULT($ac_cv_buggy_getaddrinfo)
+
+-if test $have_getaddrinfo = no || test "$ac_cv_buggy_getaddrinfo" = yes
++if test $have_getaddrinfo = no || test "$cross_compiling" != "yes" -a "$ac_cv_buggy_getaddrinfo" = yes
+ then
+ if test $ipv6 = yes
+ then
diff --git a/package/python3/python3.mk b/package/python3/python3.mk
new file mode 100644
index 0000000..7d53315
--- /dev/null
+++ b/package/python3/python3.mk
@@ -0,0 +1,152 @@
+#############################################################
+#
+# python3
+#
+#############################################################
+PYTHON3_VERSION_MAJOR = 3.3
+PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).0
+PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.bz2
+PYTHON3_SITE = http://python.org/ftp/python/$(PYTHON3_VERSION)
+
+# Python needs itself and a "pgen" program to build itself, both being
+# provided in the Python sources. So in order to cross-compile Python,
+# we need to build a host Python first. This host Python is also
+# installed in $(HOST_DIR), as it is needed when cross-compiling
+# third-party Python modules.
+
+HOST_PYTHON3_CONF_OPT += \
+ --without-cxx-main \
+ --disable-sqlite3 \
+ --disable-tk \
+ --with-expat=system \
+ --disable-curses \
+ --disable-codecs-cjk \
+ --disable-nis \
+ --disable-unicodedata \
+ --disable-dbm \
+ --disable-gdbm \
+ --disable-bsddb \
+ --disable-test-modules \
+ --disable-bz2 \
+ --disable-ssl
+
+HOST_PYTHON3_MAKE_ENV = \
+ PYTHON_MODULES_INCLUDE=$(HOST_DIR)/usr/include \
+ PYTHON_MODULES_LIB="$(HOST_DIR)/lib $(HOST_DIR)/usr/lib"
+
+HOST_PYTHON3_AUTORECONF = YES
+
+define HOST_PYTHON3_CONFIGURE_CMDS
+ (cd $(@D) && rm -rf config.cache; \
+ $(HOST_CONFIGURE_OPTS) \
+ CFLAGS="$(HOST_CFLAGS)" \
+ LDFLAGS="$(HOST_LDFLAGS)" \
+ $(HOST_PYTHON3_CONF_ENV) \
+ ./configure \
+ --prefix="$(HOST_DIR)/usr" \
+ --sysconfdir="$(HOST_DIR)/etc" \
+ $(HOST_PYTHON3_CONF_OPT) \
+ )
+endef
+
+PYTHON3_DEPENDENCIES = host-python3 libffi
+
+HOST_PYTHON3_DEPENDENCIES = host-expat host-zlib
+
+PYTHON3_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_PYTHON3_READLINE),y)
+PYTHON3_DEPENDENCIES += readline
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_CURSES),y)
+PYTHON3_DEPENDENCIES += ncurses
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_PYEXPAT),y)
+PYTHON3_DEPENDENCIES += expat
+PYTHON3_CONF_OPT += --with-expat=system
+else
+PYTHON3_CONF_OPT += --with-expat=none
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_SQLITE),y)
+PYTHON3_DEPENDENCIES += sqlite
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_SSL),y)
+PYTHON_DEPENDENCIES += openssl
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_BZIP2),y)
+PYTHON_DEPENDENCIES += bzip2
+endif
+
+ifeq ($(BR2_PACKAGE_PYTHON3_ZLIB),y)
+PYTHON3_DEPENDENCIES += zlib
+endif
+
+PYTHON3_CONF_ENV += \
+ _PROJECT_BASE=$(PYTHON3_DIR) \
+ _PYTHON_HOST_PLATFORM=$(BR2_HOSTARCH) \
+ PYTHON_FOR_BUILD=$(HOST_PYTHON3_DIR)/python \
+ PGEN_FOR_BUILD=$(HOST_PYTHON3_DIR)/Parser/pgen \
+ ac_cv_have_long_long_format=yes \
+ ac_cv_file__dev_ptmx=yes \
+ ac_cv_file__dev_ptc=yes \
+
+PYTHON3_CONF_OPT += \
+ --without-cxx-main \
+ --with-system-ffi \
+ --disable-pydoc \
+ --disable-test-modules \
+ --disable-lib2to3 \
+ --disable-gdbm \
+ --disable-tk \
+ --disable-nis \
+ --disable-dbm
+
+PYTHON3_MAKE_ENV = \
+ _PROJECT_BASE=$(PYTHON3_DIR) \
+ _PYTHON_HOST_PLATFORM=$(BR2_HOSTARCH) \
+ PYTHON_MODULES_INCLUDE=$(STAGING_DIR)/usr/include \
+ PYTHON_MODULES_LIB="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib"
+
+# python distutils adds -L$LIBDIR when linking binary extensions, causing
+# trouble for cross compilation
+define PYTHON3_FIXUP_LIBDIR
+ $(SED) 's|^LIBDIR=.*|LIBDIR= $(STAGING_DIR)/usr/lib|' \
+ $(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/config-3.3m/Makefile
+endef
+
+PYTHON3_POST_INSTALL_STAGING_HOOKS += PYTHON3_FIXUP_LIBDIR
+
+#
+# Development files removal
+#
+define PYTHON3_REMOVE_DEVFILES
+ rm -f $(TARGET_DIR)/usr/bin/python$(PYTHON3_VERSION_MAJOR)-config
+ rm -f $(TARGET_DIR)/usr/bin/python-config
+endef
+
+ifneq ($(BR2_HAVE_DEVFILES),y)
+PYTHON3_POST_INSTALL_TARGET_HOOKS += PYTHON3_REMOVE_DEVFILES
+endif
+
+#
+# Remove useless files. In the config/ directory, only the Makefile
+# and the pyconfig.h files are needed at runtime.
+#
+define PYTHON3_REMOVE_USELESS_FILES
+ for i in `find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/config-3.3m/ \
+ -type f -not -name pyconfig.h -a -not -name Makefile` ; do \
+ rm -f $$i ; \
+ done
+endef
+
+PYTHON3_POST_INSTALL_TARGET_HOOKS += PYTHON3_REMOVE_USELESS_FILES
+
+PYTHON3_AUTORECONF = YES
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
--
1.7.9.5
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox