summaryrefslogtreecommitdiff
path: root/lang/ifc
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2003-10-08 00:04:36 +0000
committerMaho Nakata <maho@FreeBSD.org>2003-10-08 00:04:36 +0000
commit814b6b4c9d157ec1c6d88f738c9020f74adcfbb2 (patch)
treec7339396cfb405fa4eaea6f501f48d752d329932 /lang/ifc
parentUpdate 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/Makefile3
-rw-r--r--lang/ifc/files/ld.c10
-rw-r--r--lang/ifc/files/linux_file.c3
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.
*/