Summary: | sys-devel/make - problematic commandline handling for very long commands | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Priit Laes (IRC: plaes) <plaes> |
Component: | [OLD] Development | Assignee: | Gentoo's Team for Core System packages <base-system> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://thread.gmane.org/gmane.comp.gnu.make.bugs/4219 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 300867 | ||
Attachments: | make-commandline-limit.patch |
Description
Priit Laes (IRC: plaes)
2010-01-15 16:54:37 UTC
Created attachment 216614 [details, diff]
make-commandline-limit.patch
Fixed patch that applies correctly to our in-tree make.
Tested with `make dist` in webkit tree (which used to fail without the patch).
i tweaked the patch to avoid autotool issues and added to 3.81-r1 I have problem with this patch when doing cross compile, previous version make-3.81 is fine emerge-armv7a-softfloat-linux-gnueabi make if armv7a-softfloat-linux-gnueabi-gcc -DLOCALEDIR=\"/usr/share/locale\" -DLIBDIR=\"/usr/lib\" -DINCLUDEDIR=\"/usr/include\" -DHAVE_CONFIG_H -I. -I. -I. -O2 -ftree-vectorize -pipe -fomit-frame-pointer -pipe -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -I/usr/armv7a-softfloat-linux-gnueabi/usr/include/ -I/usr/armv7a-softfloat-linux-gnueabi/include/ -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o main.c; \ then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi job.c: In function ‘construct_command_argv_internal’: job.c:2713: error: ‘PAGE_SIZE’ undeclared (first use in this function) job.c:2713: error: (Each undeclared identifier is reported only once job.c:2713: error: for each function it appears in.) make[2]: *** [job.o] Error 1 make[2]: *** Waiting for unfinished jobs.... main.c: In function ‘die’: main.c:3069: warning: ignoring return value of ‘chdir’, declared with attribute warn_unused_result make[2]: Leaving directory `/var/build/portage/sys-devel/make-3.81-r1/work/make-3.81' make[1]: *** [all-recursive] Error 1 (In reply to comment #1) (In reply to comment #3) > I have problem with this patch when doing cross compile, previous version > make-3.81 is fine > > emerge-armv7a-softfloat-linux-gnueabi make > > if armv7a-softfloat-linux-gnueabi-gcc -DLOCALEDIR=\"/usr/share/locale\" > -DLIBDIR=\"/usr/lib\" -DINCLUDEDIR=\"/usr/include\" -DHAVE_CONFIG_H -I. -I. -I. > -O2 -ftree-vectorize -pipe -fomit-frame-pointer -pipe -march=armv7-a > -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp > -I/usr/armv7a-softfloat-linux-gnueabi/usr/include/ > -I/usr/armv7a-softfloat-linux-gnueabi/include/ -MT main.o -MD -MP -MF > ".deps/main.Tpo" -c -o main.o main.c; \ > then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f > ".deps/main.Tpo"; exit 1; fi > job.c: In function ‘construct_command_argv_internal’: > job.c:2713: error: ‘PAGE_SIZE’ undeclared (first use in this function) > job.c:2713: error: (Each undeclared identifier is reported only once > job.c:2713: error: for each function it appears in.) > make[2]: *** [job.o] Error 1 > make[2]: *** Waiting for unfinished jobs.... > main.c: In function ‘die’: > main.c:3069: warning: ignoring return value of ‘chdir’, declared with > attribute warn_unused_result > make[2]: Leaving directory > `/var/build/portage/sys-devel/make-3.81-r1/work/make-3.81' > make[1]: *** [all-recursive] Error 1 > > > (In reply to comment #1) > PAGE_SIZE itself is defined inside sys/user.h which this patch **should** include on linux. It seems that you need newer version of glibc that includes this definition :S Ok, I did cross installed glibc in my host (using crossdev), and its version is glibc-2.11-r1, there is one file in /usr/armv7a-softfloat-linux-gnueabi/usr/include/sys/user.h, but I didn't find it define PAGE_SIZE. Looking at file /usr/include/sys/user.h, it do has PAGE_SIZE, strange~ Btw, emerge-armv7a-softfloat-linux-gnueabi -pv glibc show me that glibc has not installed for the target (In reply to comment #4) I made a ugly hack, add following two lines into "/usr/armv7a-softfloat-linux-gnueabi/usr/include/sys/user.h", then it pass the compilation #define PAGE_SHIFT 12 #define PAGE_SIZE (1UL << PAGE_SHIFT) (In reply to comment #5) this is not a bug about cross-compiling the issue is already reported/tracked in another bug (In reply to comment #7) > this is not a bug about cross-compiling > > the issue is already reported/tracked in another bug > Aha, bug #301431 |