aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormaho <maho@FreeBSD.org>2003-10-08 08:04:36 +0800
committermaho <maho@FreeBSD.org>2003-10-08 08:04:36 +0800
commit74102d2bba9d80e9d265e32d57116acf1bd66fc9 (patch)
treed5923f675da7b60079dbd9852a80a9b0ce914e07
parent2e013489f7b039783e8bc56bed8e96544221d07d (diff)
downloadfreebsd-ports-graphics-74102d2bba9d80e9d265e32d57116acf1bd66fc9.tar.gz
freebsd-ports-graphics-74102d2bba9d80e9d265e32d57116acf1bd66fc9.tar.zst
freebsd-ports-graphics-74102d2bba9d80e9d265e32d57116acf1bd66fc9.zip
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>
-rw-r--r--lang/ifc/Makefile3
-rw-r--r--lang/ifc/files/ld.c10
-rw-r--r--lang/ifc/files/linux_file.c3
-rw-r--r--lang/ifc7/Makefile3
-rw-r--r--lang/ifc7/files/ld.c10
-rw-r--r--lang/ifc7/files/linux_file.c3
6 files changed, 22 insertions, 10 deletions
diff --git a/lang/ifc/Makefile b/lang/ifc/Makefile
index f70f070dafa..4e2dc6c9077 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 cd201616d63..119a3db7350 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 c6c6dd46fdc..61f5acd3271 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 f70f070dafa..4e2dc6c9077 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 7f3073d5168..e2fba2874d5 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 c6c6dd46fdc..61f5acd3271 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.
*/