diff options
author | maho <maho@FreeBSD.org> | 2003-10-08 00:04:36 +0000 |
---|---|---|
committer | maho <maho@FreeBSD.org> | 2003-10-08 00:04:36 +0000 |
commit | 74102d2bba9d80e9d265e32d57116acf1bd66fc9 (patch) | |
tree | d5923f675da7b60079dbd9852a80a9b0ce914e07 /lang | |
parent | 2e013489f7b039783e8bc56bed8e96544221d07d (diff) | |
download | FreeBSD-ports-74102d2bba9d80e9d265e32d57116acf1bd66fc9.zip FreeBSD-ports-74102d2bba9d80e9d265e32d57116acf1bd66fc9.tar.gz |
IFC fails to link when invoked with -ax or -x option
because a static library of ifc has an unresolved symbol, __sigsetjmp.
The following is an example of error messages:
PR: 57574
Submitted by: Masakazu HIGAKI <higamasa@dream.com>
Diffstat (limited to 'lang')
-rw-r--r-- | lang/ifc/Makefile | 3 | ||||
-rw-r--r-- | lang/ifc/files/ld.c | 10 | ||||
-rw-r--r-- | lang/ifc/files/linux_file.c | 3 | ||||
-rw-r--r-- | lang/ifc7/Makefile | 3 | ||||
-rw-r--r-- | lang/ifc7/files/ld.c | 10 | ||||
-rw-r--r-- | lang/ifc7/files/linux_file.c | 3 |
6 files changed, 22 insertions, 10 deletions
diff --git a/lang/ifc/Makefile b/lang/ifc/Makefile index f70f070..4e2dc6c 100644 --- a/lang/ifc/Makefile +++ b/lang/ifc/Makefile @@ -122,7 +122,8 @@ do-build: .for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a \ libBINDF90.a libCEPCF90.a libF90.a libIEPCF90.a libPEPCF90.a \ libcprts.a libintrins.a libompstub.a - @${OBJCOPY} --redefine-sym stdin=__stdinp \ + @${OBJCOPY} --redefine-sym __sigsetjmp=sigsetjmp \ + --redefine-sym stdin=__stdinp \ --redefine-sym stdout=__stdoutp \ --redefine-sym stderr=__stderrp \ ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/lib/${i} diff --git a/lang/ifc/files/ld.c b/lang/ifc/files/ld.c index cd20161..119a3db 100644 --- a/lang/ifc/files/ld.c +++ b/lang/ifc/files/ld.c @@ -28,7 +28,7 @@ * Based on a shell-script written by Dan Nelson <dnelson@allantgroup.com> * with some modifications by Alexander Leidinger <netchild@FreeBSD.org>. * - * $FreeBSD: /tmp/pcvs/ports/lang/ifc/files/ld.c,v 1.2 2003-04-28 22:17:47 maho Exp $ + * $FreeBSD: /tmp/pcvs/ports/lang/ifc/files/ld.c,v 1.3 2003-10-08 00:04:36 maho Exp $ */ /* Uses code marked: */ @@ -206,6 +206,10 @@ main(int argc, char *argv[], char *envp[]) dynamic++; continue; } + if (ARGCMP("-shared")) { + dynamic++; + continue; + } /* * Just link libstlport_icc* once when compiling the stlport @@ -334,7 +338,11 @@ main(int argc, char *argv[], char *envp[]) /* Switch Linux stuff to FreeBSD counterparts. */ if (ARGCMP("/lib/ld-linux.so.2")) { +#if __FreeBSD_version >= 501105 + addarg(&al, "/libexec/ld-elf.so.1", 1); +#else addarg(&al, "/usr/libexec/ld-elf.so.1", 1); +#endif continue; } if (ARGCMP("-L/usr/lib")) { diff --git a/lang/ifc/files/linux_file.c b/lang/ifc/files/linux_file.c index c6c6dd4..61f5acd 100644 --- a/lang/ifc/files/linux_file.c +++ b/lang/ifc/files/linux_file.c @@ -30,9 +30,6 @@ #include <sys/types.h> #include <sys/stat.h> -static short unsigned int ctype_b[256] = { 0 }; -short unsigned int *__ctype_b = ctype_b; - /* This matches struct stat64 in glibc2.1, hence the absolutely * insane amounts of padding around dev_t's. */ diff --git a/lang/ifc7/Makefile b/lang/ifc7/Makefile index f70f070..4e2dc6c 100644 --- a/lang/ifc7/Makefile +++ b/lang/ifc7/Makefile @@ -122,7 +122,8 @@ do-build: .for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a \ libBINDF90.a libCEPCF90.a libF90.a libIEPCF90.a libPEPCF90.a \ libcprts.a libintrins.a libompstub.a - @${OBJCOPY} --redefine-sym stdin=__stdinp \ + @${OBJCOPY} --redefine-sym __sigsetjmp=sigsetjmp \ + --redefine-sym stdin=__stdinp \ --redefine-sym stdout=__stdoutp \ --redefine-sym stderr=__stderrp \ ${WRKSRC}/opt/intel/${COMPILERDIR}/ia32/lib/${i} diff --git a/lang/ifc7/files/ld.c b/lang/ifc7/files/ld.c index 7f3073d..e2fba28 100644 --- a/lang/ifc7/files/ld.c +++ b/lang/ifc7/files/ld.c @@ -28,7 +28,7 @@ * Based on a shell-script written by Dan Nelson <dnelson@allantgroup.com> * with some modifications by Alexander Leidinger <netchild@FreeBSD.org>. * - * $FreeBSD: /tmp/pcvs/ports/lang/ifc7/files/Attic/ld.c,v 1.2 2003-04-28 22:17:47 maho Exp $ + * $FreeBSD: /tmp/pcvs/ports/lang/ifc7/files/Attic/ld.c,v 1.3 2003-10-08 00:04:36 maho Exp $ */ /* Uses code marked: */ @@ -206,6 +206,10 @@ main(int argc, char *argv[], char *envp[]) dynamic++; continue; } + if (ARGCMP("-shared")) { + dynamic++; + continue; + } /* * Just link libstlport_icc* once when compiling the stlport @@ -334,7 +338,11 @@ main(int argc, char *argv[], char *envp[]) /* Switch Linux stuff to FreeBSD counterparts. */ if (ARGCMP("/lib/ld-linux.so.2")) { +#if __FreeBSD_version >= 501105 + addarg(&al, "/libexec/ld-elf.so.1", 1); +#else addarg(&al, "/usr/libexec/ld-elf.so.1", 1); +#endif continue; } if (ARGCMP("-L/usr/lib")) { diff --git a/lang/ifc7/files/linux_file.c b/lang/ifc7/files/linux_file.c index c6c6dd4..61f5acd 100644 --- a/lang/ifc7/files/linux_file.c +++ b/lang/ifc7/files/linux_file.c @@ -30,9 +30,6 @@ #include <sys/types.h> #include <sys/stat.h> -static short unsigned int ctype_b[256] = { 0 }; -short unsigned int *__ctype_b = ctype_b; - /* This matches struct stat64 in glibc2.1, hence the absolutely * insane amounts of padding around dev_t's. */ |