Summary: | dev-perl/Ace calls cc directly | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Agostino Sarubbo <ago> |
Component: | Current packages | Assignee: | Gentoo Science Related Packages <sci> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | kentnl, perl |
Priority: | Normal | Keywords: | PullRequest |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://github.com/gentoo/gentoo/pull/15854 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 243502, 723238 | ||
Attachments: | build.log |
Description
Agostino Sarubbo
![]() Created attachment 639138 [details]
build.log
build log and emerge --info
Big ol' ball of fun in this one: ./acelib/wmake/ALPHA_G3_DEF:COMPILER = gcc -g -DACEDB3 ./acelib/wmake/ALPHA_G3_DEF:LINKER = gcc -g ./acelib/wmake/POSIX_4_DEF:COMPILER = cc -DACEDB4 ./acelib/wmake/IRIX_DEF:COMPILER = cc -g -n32 DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/IRIX_DEF:LINKER = cc -g ./acelib/wmake/SOLARIS_DEF:COMPILER = cc -O2 -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SOLARIS_DEF:LINKER = cc -L/usr/openwin/lib -R/usr/openwin/lib ./acelib/wmake/ALPHA_4_OSFV3_DEF:COMPILER = cc -g -std1 -ieee_with_inexact -DACEDB4 ./acelib/wmake/ALPHA_4_OSFV3_DEF:LINKER = cc -g ./acelib/wmake/IRIX4_4_DEF:COMPILER = cc -g -DNO_LEFT_CASTING -DACEDB4 -Wf,-XNl4096 ./acelib/wmake/IRIX4_4_DEF:LINKER = cc -g ./acelib/wmake/DEC_OSF_DEF:COMPILER = cc -O -Olimit 3000 -std1 -DACEDB4 -ieee_with_inexact ./acelib/wmake/SGI_4_GCC_DEF:########### for the SGI Silicon Graphics & gcc ################## ./acelib/wmake/SGI_4_GCC_DEF:COMPILER = gcc -g -DNO_LEFT_CASTING -Wall -DACEDB4 ./acelib/wmake/SGI_4_GCC_DEF:LINKER = gcc -g ./acelib/wmake/LINUX_DEF:COMPILER = gcc -g -Wall -O2 -DACEDB4 ./acelib/wmake/LINUX_DEF:LINKER = gcc -g ./acelib/wmake/SGI_4_IRIX5_DEF:COMPILER = cc -g -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SGI_4_IRIX5_DEF:LINKER = cc -g ./acelib/wmake/ALPHA_CHRONO_4_DEF:COMPILER = cc -g -std1 -DACEDB4 -DCHRONO ./acelib/wmake/SUNOS_DEF:#COMPILER = gcc -g -O2 -Wreturn-type -Wimplicit -Wunused -Wcomment \ ./acelib/wmake/SUNOS_DEF:##COMPILER = gcc -g -O2 -Wreturn-type -Wimplicit -Wunused -Wcomment \ ./acelib/wmake/SUNOS_DEF:COMPILER = gcc -g -O2 -Wall -fwritable-strings -DNOMEMMOVE -DACEDB4 ./acelib/wmake/SUNOS_DEF:LINKER = gcc -g -static ./acelib/wmake/LINUX_4_DEF:COMPILER = gcc -g -Wall -O2 -DACEDB4 ./acelib/wmake/LINUX_4_DEF:LINKER = gcc -g ./acelib/wmake/SGI_4_DEF:# the native cc is recommended over gcc on Silicon Graphics ./acelib/wmake/SGI_4_DEF:COMPILER = cc -g -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SGI_4_DEF:LINKER = cc -g ./acelib/wmake/HPUX_DEF:COMPILER = gcc -g -DNO_LEFT_CASTING -DACEDB4 -I/usr/include/X11R5 -I/usr/local/include/MIT/X11R5/include ./acelib/wmake/HPUX_DEF:LINKER = gcc -g -L/usr/lib/X11R5 ./acelib/wmake/SOLARIS_4_DEF:COMPILER = gcc -g -DNO_LEFT_CASTING -O2 -Wall -I/usr/openwin/include -DACEDB4 ./acelib/wmake/SOLARIS_4_DEF:LINKER = gcc -g ./acelib/wmake/SGI_DEF:# the native cc is recommended over gcc on Silicon Graphics ./acelib/wmake/SGI_DEF:COMPILER = cc -g -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SGI_DEF:LINKER = cc -g ./acelib/wmake/ALPHA_4_GCC_DEF:COMPILER = gcc -g -DACEDB4 -ansi -pedantic -Wall -Wnested-externs -ieee_with_inexact ./acelib/wmake/ALPHA_4_GCC_DEF:LINKER = gcc -g ./acelib/wmake/SOLARIS_7_gcc_DEF:# @(#)SOLARIS_7_gcc_DEF 1.1 4/11/95 ./acelib/wmake/SOLARIS_7_gcc_DEF:############### wmake/SOLARIS_7_gcc_DEF ############## ./acelib/wmake/SOLARIS_7_gcc_DEF:COMPILER = gcc -O4 -fwritable-strings -I/usr/openwin/include -DACEDB4 -DHASVSPRINTF ./acelib/wmake/SOLARIS_7_gcc_DEF:LINKER = gcc -L/usr/openwin/lib -R/usr/openwin/lib ./acelib/wmake/LINUX_LIBC5_4_DEF:COMPILER = gcc -g -fwritable-strings -DACEDB4 -I. ./acelib/wmake/LINUX_LIBC5_4_DEF:LINKER = gcc -g ./acelib/wmake/SGI_4_NEW_DEF:COMPILER = cc -Wf,-XNh2000 -g -DNO_LEFT_CASTING -DACEDB4 -DNEW_MODELS -I. ./acelib/wmake/SGI_4_NEW_DEF:LINKER = cc -g ./acelib/wmake/POSIX_4_GCC_DEF:COMPILER = gcc -fwritable-strings -DACEDB4 ./acelib/wmake/SOLARIS_4_RELEASE_DEF:COMPILER = gcc -g -O2 -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 -I. ./acelib/wmake/SOLARIS_4_RELEASE_DEF:LINKER = gcc -g -Xlinker -R -Xlinker /usr/openwin/lib -L/usr/openwin/lib ./acelib/wmake/ALPHA_4_DEF:COMPILER = cc -g -std1 -ieee_with_inexact -DACEDB4 ./acelib/wmake/ALPHA_4_DEF:LINKER = cc -g ./acelib/wmake/SUN_4_DEF:#COMPILER = gcc -g -O2 -Wreturn-type -Wimplicit -Wunused -Wcomment \ ./acelib/wmake/SUN_4_DEF:##COMPILER = gcc -g -O2 -Wreturn-type -Wimplicit -Wunused -Wcomment \ ./acelib/wmake/SUN_4_DEF:COMPILER = gcc -g -O2 -Wall -fwritable-strings -DNOMEMMOVE -DACEDB4 ./acelib/wmake/SUN_4_DEF:LINKER = gcc -g -static ./acelib/wmake/ALPHA_4_NEW_DEF:COMPILER = cc -g -std1 -DACEDB4 -DNEW_MODELS ./acelib/wmake/SUN_4_NEW_DEF:COMPILER = gcc -g -Wreturn-type -Wimplicit -Wunused -Wcomment \ ./acelib/wmake/SUN_4_NEW_DEF:LINKER = gcc -g -static ./acelib/wmake/HP_4_GCC_DEF:COMPILER = gcc -g -DNO_LEFT_CASTING -DACEDB4 -I/usr/include/X11R5 -I/usr/local/include/MIT/X11R5/include ./acelib/wmake/HP_4_GCC_DEF:LINKER = gcc -g -L/usr/lib/X11R5 ./acelib/wmake/LINUX_MAC_4_DEF:COMPILER = gcc -g -fwritable-strings -DACEDB4 -I. -DLINUX_MAC ./acelib/wmake/LINUX_MAC_4_DEF:LINKER = gcc -g ./acelib/wmake/INTEL_SOLARIS_4_OPT_DEF:COMPILER = cc -xO4 -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/INTEL_SOLARIS_4_OPT_DEF:LINKER = cc -L/usr/openwin/lib -R/usr/openwin/lib ./acelib/wmake/ALPHA_4_OPT_DEF:COMPILER = cc -O -Olimit 3000 -std1 -DACEDB4 -ieee_with_inexact ./acelib/wmake/SOLARIS_GCC_DEF:COMPILER = gcc -O2 -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SOLARIS_GCC_DEF:LINKER = gcc -L/usr/openwin/lib -R/usr/openwin/lib ./acelib/wmake/SOLARIS_4_OPT_DEF:COMPILER = cc -xO4 -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SOLARIS_4_OPT_DEF:LINKER = cc -L/usr/openwin/lib -R/usr/openwin/lib ./acelib/wmake/SGI_4_PURE_DEF:# the native cc is recommended over gcc on Silicon Graphics ./acelib/wmake/SGI_4_PURE_DEF:COMPILER = cc -g -DNO_LEFT_CASTING -DACEDB4 ./acelib/wmake/SGI_4_PURE_DEF:LINKER = purify -chain-length="10" cc -g ./acelib/wmake/SOLARIS_4_NEW_DEF:COMPILER = gcc -g -I/usr/openwin/include -DNO_LEFT_CASTING -DACEDB4 -DNEW_MODELS -I. ./acelib/wmake/SOLARIS_4_NEW_DEF:LINKER = gcc -g The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5612f43dabdac343600e5293e9c97261f3edeafc commit 5612f43dabdac343600e5293e9c97261f3edeafc Author: Kent Fredric <kentnl@gentoo.org> AuthorDate: 2020-05-17 19:19:32 +0000 Commit: Kent Fredric <kentnl@gentoo.org> CommitDate: 2020-06-20 03:18:04 +0000 dev-perl/Ace: Add CC/AR/LD/RANLIB toolchain love This logic is highly experimental, but it does work for me ( though I don't do what ago does with LD because its too spicy ) This set of changes patches acelib so that all gcc/cc/ar calls can be overloaded externally, though this somewhat defeats the point of most of these files, as some of them only differed in wether they said "cc" or "gcc". The downside is I *had* to rework how the elibc_glibc block worked, because as it was *conditional*, and patched lines adjacent to the lines changed in -toolchain.patch, the existing patch could *only* be adapted to work dependent on the -toolchain patch. Instead, the essential variable overrides are performed externally via `make` arguments, as this has the same outcome. Any logic I didn't fully understand I left in place. And I had to get clever with names, because acelib already has an internal variable called "CC", and its value .... contains then entire set of compile parameters for the compiler! Also, the use of these TARGET_ seems to be less prone to conflict with values that do similar things in perl space, where doing something like LD="something-ld" can be fatal, as perl space doesn't expect LD to be an actaul LD, but a CCLD, and passes flags LD doesn't support. But there will *probably* be a few bugs in this approach, I'm no Make wizard. Bug: https://bugs.gentoo.org/723152 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Kent Fredric <kentnl@gentoo.org> dev-perl/Ace/Ace-1.920.0-r5.ebuild | 139 +++++++ dev-perl/Ace/files/Ace-1.92-DARWIN_DEF | 5 + dev-perl/Ace/files/Ace-1.92-toolchain.patch | 561 ++++++++++++++++++++++++++++ 3 files changed, 705 insertions(+) The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f20b2d96120529ca33344e38840b454b56beff86 commit f20b2d96120529ca33344e38840b454b56beff86 Author: Kent Fredric <kentnl@gentoo.org> AuthorDate: 2020-08-06 15:53:22 +0000 Commit: Kent Fredric <kentnl@gentoo.org> CommitDate: 2020-08-06 15:54:57 +0000 dev-perl/Ace: Cleanup old 1.920.0-r{3,4,5} Closes: https://bugs.gentoo.org/723152 Closes: https://bugs.gentoo.org/716266 Package-Manager: Portage-2.3.103, Repoman-2.3.22 Signed-off-by: Kent Fredric <kentnl@gentoo.org> dev-perl/Ace/Ace-1.920.0-r3.ebuild | 116 ------------------------- dev-perl/Ace/Ace-1.920.0-r4.ebuild | 137 ----------------------------- dev-perl/Ace/Ace-1.920.0-r5.ebuild | 139 ------------------------------ dev-perl/Ace/files/Ace-1.92-glibc26.patch | 29 ------- 4 files changed, 421 deletions(-) |