diff options
author | Maho Nakata <maho@FreeBSD.org> | 2003-10-08 00:04:36 +0000 |
---|---|---|
committer | Maho Nakata <maho@FreeBSD.org> | 2003-10-08 00:04:36 +0000 |
commit | 814b6b4c9d157ec1c6d88f738c9020f74adcfbb2 (patch) | |
tree | c7339396cfb405fa4eaea6f501f48d752d329932 /lang/ifc | |
parent | Update to 0.3. (diff) |
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>
Notes
Notes:
svn path=/head/; revision=90575
Diffstat (limited to 'lang/ifc')
-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 |
3 files changed, 11 insertions, 5 deletions
diff --git a/lang/ifc/Makefile b/lang/ifc/Makefile index f70f070dafa3..4e2dc6c9077b 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 cd201616d634..119a3db73502 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 c6c6dd46fdc1..61f5acd32712 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. */ |