1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-02 06:03:50 +00:00

- Keep up with changes on -current (__sF, elf_i386 -> elf_i386_fbsd).

- Use an exclude file for cpio, there's not much sense in extracting
  and chmod'ing a whole bunch of files only to delete them afterwards.
- Fix two bugs in the ld-wrapper that could cause it to dump core in
  rare cases.
- Remove a forgotten C++ include.
- Improve IGNORE message.

Submitted by:	marius@alchemy.franken.de
This commit is contained in:
Alexander Leidinger 2002-11-08 15:59:38 +00:00
parent 19950f55fa
commit 628837b0cc
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=69730
8 changed files with 190 additions and 44 deletions

View File

@ -37,8 +37,10 @@ ICC_SITE= http://www.intel.com/software/products/compilers/
ICCCFGVAL!= ${UNAME} -r | ${SED} -e 's/\..*//'
OBJCOPY?= /usr/bin/objcopy
.if !exists(${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX})
IGNORE= "Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again."
IGNORE= "Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}c60l/noncom.htm or https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
.endif
post-extract:
@ -49,7 +51,14 @@ post-extract:
# intel-ecc6-6.0.1-304.ia64.rpm \
# intel-eldb6-6.0.1-308.ia64.rpm \
# intel-esubh6-6.0.1-304.ia64.rpm
@cd ${WRKSRC}; rpm2cpio 2>/dev/null ${i} | cpio -idu --quiet
.if defined(NOPORTDOCS)
@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
cpio -idfuE ${FILESDIR}/cpio-exclude --quiet \
*/opt/intel/compiler60/docs/*
.else
@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
cpio -idfuE ${FILESDIR}/cpio-exclude --quiet
.endif
.endfor
pre-patch:
@ -75,23 +84,13 @@ post-patch:
${WRKSRC}/opt/intel/compiler60/${i}
@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/${i}
.endfor
# Remove unneeded files
.for i in cfloat.orig cwchar.orig yvals.h.orig algorithm bitset complex deque \
fstream fstream.h functional hash_map hash_set iomanip iomanip.h ios \
iosfwd iostream iostream.h istream iterator limits list locale map \
memory numeric ostream queue set slist sstream stack stdexcept stl.h \
stream.h streambuf string strstream strstream.h utility valarray \
vector xcomplex xdebug xhash xiosbase xlocale xlocinfo xlocinfo.h \
xlocmes xlocmon xlocnum xloctime xmemory xstring xtree xutility ymath.h
.for i in cfloat.orig cwchar.orig yvals.h.orig
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/include/${i}
.endfor
.for i in libcprts.a libcprts.so libcprts.so.1 libguide.a libguide.so \
libunwind.so libunwind.so.1
@${RM} -rf ${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
.for i in icc.orig icpc.orig
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/${i}
.endfor
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/uninstall \
${WRKSRC}/opt/intel/compiler60/ia32/bin/icc.orig \
${WRKSRC}/opt/intel/compiler60/ia32/bin/icpc.orig
# Remove empty directory
.if defined(NOPORTDOCS)
@${RM} -rf ${WRKSRC}/opt/intel/compiler60/docs
.endif
@ -109,9 +108,16 @@ do-build:
# Fix unresolved references
@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/assert_fail.c \
${FILESDIR}/cxa_atexit.c ${FILESDIR}/cxa_finalize.c \
${FILESDIR}/errno_location.c ${FILESDIR}/stderr.c \
${FILESDIR}/mcount.S && \
${AR} q opt/intel/compiler60/ia32/lib/libcxa.a *.o
${FILESDIR}/errno_location.c ${FILESDIR}/mcount.S
.if ${OSVERSION} < 500042
@${CC} ${CFLAGS} -c -o ${WRKSRC}/stderr.o ${FILESDIR}/stderr.c
.else
.for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a
@${OBJCOPY} --redefine-sym stderr=__stderrp \
${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
.endfor
.endif
@${AR} q ${WRKSRC}/opt/intel/compiler60/ia32/lib/libcxa.a ${WRKSRC}/*.o
# Some magic to be able to link
@${CC} ${CFLAGS} -o ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld ${FILESDIR}/ld.c
@${STRIP_CMD} ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld

View File

@ -0,0 +1,64 @@
*/opt/intel/compiler60/ia32/bin/uninstall
*/opt/intel/compiler60/ia32/include/algorithm
*/opt/intel/compiler60/ia32/include/bitset
*/opt/intel/compiler60/ia32/include/complex
*/opt/intel/compiler60/ia32/include/deque
*/opt/intel/compiler60/ia32/include/fstream
*/opt/intel/compiler60/ia32/include/fstream.h
*/opt/intel/compiler60/ia32/include/functional
*/opt/intel/compiler60/ia32/include/hash_map
*/opt/intel/compiler60/ia32/include/hash_set
*/opt/intel/compiler60/ia32/include/iomanip
*/opt/intel/compiler60/ia32/include/iomanip.h
*/opt/intel/compiler60/ia32/include/ios
*/opt/intel/compiler60/ia32/include/iosfwd
*/opt/intel/compiler60/ia32/include/iostream
*/opt/intel/compiler60/ia32/include/iostream.h
*/opt/intel/compiler60/ia32/include/istream
*/opt/intel/compiler60/ia32/include/iterator
*/opt/intel/compiler60/ia32/include/limits
*/opt/intel/compiler60/ia32/include/list
*/opt/intel/compiler60/ia32/include/locale
*/opt/intel/compiler60/ia32/include/map
*/opt/intel/compiler60/ia32/include/memory
*/opt/intel/compiler60/ia32/include/numeric
*/opt/intel/compiler60/ia32/include/ostream
*/opt/intel/compiler60/ia32/include/queue
*/opt/intel/compiler60/ia32/include/set
*/opt/intel/compiler60/ia32/include/slist
*/opt/intel/compiler60/ia32/include/sstream
*/opt/intel/compiler60/ia32/include/stack
*/opt/intel/compiler60/ia32/include/stdexcept
*/opt/intel/compiler60/ia32/include/stdiostream.h
*/opt/intel/compiler60/ia32/include/stl.h
*/opt/intel/compiler60/ia32/include/stream.h
*/opt/intel/compiler60/ia32/include/streambuf
*/opt/intel/compiler60/ia32/include/string
*/opt/intel/compiler60/ia32/include/strstream
*/opt/intel/compiler60/ia32/include/strstream.h
*/opt/intel/compiler60/ia32/include/utility
*/opt/intel/compiler60/ia32/include/valarray
*/opt/intel/compiler60/ia32/include/vector
*/opt/intel/compiler60/ia32/include/xcomplex
*/opt/intel/compiler60/ia32/include/xdebug
*/opt/intel/compiler60/ia32/include/xhash
*/opt/intel/compiler60/ia32/include/xiosbase
*/opt/intel/compiler60/ia32/include/xlocale
*/opt/intel/compiler60/ia32/include/xlocinfo
*/opt/intel/compiler60/ia32/include/xlocinfo.h
*/opt/intel/compiler60/ia32/include/xlocmes
*/opt/intel/compiler60/ia32/include/xlocmon
*/opt/intel/compiler60/ia32/include/xlocnum
*/opt/intel/compiler60/ia32/include/xloctime
*/opt/intel/compiler60/ia32/include/xmemory
*/opt/intel/compiler60/ia32/include/xstring
*/opt/intel/compiler60/ia32/include/xtree
*/opt/intel/compiler60/ia32/include/xutility
*/opt/intel/compiler60/ia32/include/ymath.h
*/opt/intel/compiler60/ia32/lib/libcprts.a
*/opt/intel/compiler60/ia32/lib/libcprts.so
*/opt/intel/compiler60/ia32/lib/libcprts.so.1
*/opt/intel/compiler60/ia32/lib/libguide.a
*/opt/intel/compiler60/ia32/lib/libguide.so
*/opt/intel/compiler60/ia32/lib/libunwind.so
*/opt/intel/compiler60/ia32/lib/libunwind.so.1

View File

@ -272,7 +272,11 @@ main(int argc, char *argv[], char *envp[])
/* prepend "-melf_i386" to the commandline */
if (i == 0) {
addarg(&al, argv[0], 1);
#if __FreeBSD_version < 500042
addarg(&al, "-melf_i386", 1);
#else
addarg(&al, "-melf_i386_fbsd", 1);
#endif
continue;
}
@ -370,7 +374,7 @@ main(int argc, char *argv[], char *envp[])
* dynamic versions have glibc dependencies.
* Don't add superfluous -Bdynamic.
*/
if (ARGCMP("-Bdynamic") && i <= argc + 1) {
if (ARGCMP("-Bdynamic") && i < argc - 1) {
if (!strcmp(argv[i + 1], "-lcxa") ||
(cpp && !strcmp(argv[i + 1], "-lunwind"))) {
addarg(&al, "-Bstatic", 1);
@ -383,7 +387,7 @@ main(int argc, char *argv[], char *envp[])
}
/* Don't add superfluous -Bstatic. */
if (ARGCMP("-Bstatic") && i <= argc + 1 &&
if (ARGCMP("-Bstatic") && i < argc - 1 &&
(!strcmp(argv[i + 1], "-lcprts") ||
(!cpp && !strcmp(argv[i + 1], "-lunwind"))))
continue;

View File

@ -737,7 +737,6 @@ intel/compiler60/ia32/include/sse2mmx.h
intel/compiler60/ia32/include/stdarg.h
intel/compiler60/ia32/include/stdbool.h
intel/compiler60/ia32/include/stddef.h
intel/compiler60/ia32/include/stdiostream.h
intel/compiler60/ia32/include/typeinfo
intel/compiler60/ia32/include/varargs.h
intel/compiler60/ia32/include/xmmintrin.h

View File

@ -37,8 +37,10 @@ ICC_SITE= http://www.intel.com/software/products/compilers/
ICCCFGVAL!= ${UNAME} -r | ${SED} -e 's/\..*//'
OBJCOPY?= /usr/bin/objcopy
.if !exists(${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX})
IGNORE= "Please manually download ${DISTFILES} from ${ICC_SITE}, e.g. from ${ICC_SITE}c60l/noncom.htm or from https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again."
IGNORE= "Please manually download ${DISTFILES} from ${ICC_SITE}, ${ICC_SITE}c60l/noncom.htm or https://premier.intel.com/ \(whichever has the file, to access premier.intel.com you have to register at http://www.intel.com/software/products/registrationcenter/index.htm\). With a little bit of luck it may also be available from ftp://download.intel.com/software/products/compilers/downloads/. Put it into ${DISTDIR} and run make again"
.endif
post-extract:
@ -49,7 +51,14 @@ post-extract:
# intel-ecc6-6.0.1-304.ia64.rpm \
# intel-eldb6-6.0.1-308.ia64.rpm \
# intel-esubh6-6.0.1-304.ia64.rpm
@cd ${WRKSRC}; rpm2cpio 2>/dev/null ${i} | cpio -idu --quiet
.if defined(NOPORTDOCS)
@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
cpio -idfuE ${FILESDIR}/cpio-exclude --quiet \
*/opt/intel/compiler60/docs/*
.else
@cd ${WRKSRC} && rpm2cpio 2>/dev/null ${i} | \
cpio -idfuE ${FILESDIR}/cpio-exclude --quiet
.endif
.endfor
pre-patch:
@ -75,23 +84,13 @@ post-patch:
${WRKSRC}/opt/intel/compiler60/${i}
@${CHMOD} 755 ${WRKSRC}/opt/intel/compiler60/${i}
.endfor
# Remove unneeded files
.for i in cfloat.orig cwchar.orig yvals.h.orig algorithm bitset complex deque \
fstream fstream.h functional hash_map hash_set iomanip iomanip.h ios \
iosfwd iostream iostream.h istream iterator limits list locale map \
memory numeric ostream queue set slist sstream stack stdexcept stl.h \
stream.h streambuf string strstream strstream.h utility valarray \
vector xcomplex xdebug xhash xiosbase xlocale xlocinfo xlocinfo.h \
xlocmes xlocmon xlocnum xloctime xmemory xstring xtree xutility ymath.h
.for i in cfloat.orig cwchar.orig yvals.h.orig
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/include/${i}
.endfor
.for i in libcprts.a libcprts.so libcprts.so.1 libguide.a libguide.so \
libunwind.so libunwind.so.1
@${RM} -rf ${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
.for i in icc.orig icpc.orig
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/${i}
.endfor
@${RM} ${WRKSRC}/opt/intel/compiler60/ia32/bin/uninstall \
${WRKSRC}/opt/intel/compiler60/ia32/bin/icc.orig \
${WRKSRC}/opt/intel/compiler60/ia32/bin/icpc.orig
# Remove empty directory
.if defined(NOPORTDOCS)
@${RM} -rf ${WRKSRC}/opt/intel/compiler60/docs
.endif
@ -109,9 +108,16 @@ do-build:
# Fix unresolved references
@cd ${WRKSRC} && ${CC} ${CFLAGS} -c ${FILESDIR}/assert_fail.c \
${FILESDIR}/cxa_atexit.c ${FILESDIR}/cxa_finalize.c \
${FILESDIR}/errno_location.c ${FILESDIR}/stderr.c \
${FILESDIR}/mcount.S && \
${AR} q opt/intel/compiler60/ia32/lib/libcxa.a *.o
${FILESDIR}/errno_location.c ${FILESDIR}/mcount.S
.if ${OSVERSION} < 500042
@${CC} ${CFLAGS} -c -o ${WRKSRC}/stderr.o ${FILESDIR}/stderr.c
.else
.for i in libcxa.a libimf.a libirc.a libircmt.a libunwind.a
@${OBJCOPY} --redefine-sym stderr=__stderrp \
${WRKSRC}/opt/intel/compiler60/ia32/lib/${i}
.endfor
.endif
@${AR} q ${WRKSRC}/opt/intel/compiler60/ia32/lib/libcxa.a ${WRKSRC}/*.o
# Some magic to be able to link
@${CC} ${CFLAGS} -o ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld ${FILESDIR}/ld.c
@${STRIP_CMD} ${WRKSRC}/opt/intel/compiler60/ia32/bin/ld

View File

@ -0,0 +1,64 @@
*/opt/intel/compiler60/ia32/bin/uninstall
*/opt/intel/compiler60/ia32/include/algorithm
*/opt/intel/compiler60/ia32/include/bitset
*/opt/intel/compiler60/ia32/include/complex
*/opt/intel/compiler60/ia32/include/deque
*/opt/intel/compiler60/ia32/include/fstream
*/opt/intel/compiler60/ia32/include/fstream.h
*/opt/intel/compiler60/ia32/include/functional
*/opt/intel/compiler60/ia32/include/hash_map
*/opt/intel/compiler60/ia32/include/hash_set
*/opt/intel/compiler60/ia32/include/iomanip
*/opt/intel/compiler60/ia32/include/iomanip.h
*/opt/intel/compiler60/ia32/include/ios
*/opt/intel/compiler60/ia32/include/iosfwd
*/opt/intel/compiler60/ia32/include/iostream
*/opt/intel/compiler60/ia32/include/iostream.h
*/opt/intel/compiler60/ia32/include/istream
*/opt/intel/compiler60/ia32/include/iterator
*/opt/intel/compiler60/ia32/include/limits
*/opt/intel/compiler60/ia32/include/list
*/opt/intel/compiler60/ia32/include/locale
*/opt/intel/compiler60/ia32/include/map
*/opt/intel/compiler60/ia32/include/memory
*/opt/intel/compiler60/ia32/include/numeric
*/opt/intel/compiler60/ia32/include/ostream
*/opt/intel/compiler60/ia32/include/queue
*/opt/intel/compiler60/ia32/include/set
*/opt/intel/compiler60/ia32/include/slist
*/opt/intel/compiler60/ia32/include/sstream
*/opt/intel/compiler60/ia32/include/stack
*/opt/intel/compiler60/ia32/include/stdexcept
*/opt/intel/compiler60/ia32/include/stdiostream.h
*/opt/intel/compiler60/ia32/include/stl.h
*/opt/intel/compiler60/ia32/include/stream.h
*/opt/intel/compiler60/ia32/include/streambuf
*/opt/intel/compiler60/ia32/include/string
*/opt/intel/compiler60/ia32/include/strstream
*/opt/intel/compiler60/ia32/include/strstream.h
*/opt/intel/compiler60/ia32/include/utility
*/opt/intel/compiler60/ia32/include/valarray
*/opt/intel/compiler60/ia32/include/vector
*/opt/intel/compiler60/ia32/include/xcomplex
*/opt/intel/compiler60/ia32/include/xdebug
*/opt/intel/compiler60/ia32/include/xhash
*/opt/intel/compiler60/ia32/include/xiosbase
*/opt/intel/compiler60/ia32/include/xlocale
*/opt/intel/compiler60/ia32/include/xlocinfo
*/opt/intel/compiler60/ia32/include/xlocinfo.h
*/opt/intel/compiler60/ia32/include/xlocmes
*/opt/intel/compiler60/ia32/include/xlocmon
*/opt/intel/compiler60/ia32/include/xlocnum
*/opt/intel/compiler60/ia32/include/xloctime
*/opt/intel/compiler60/ia32/include/xmemory
*/opt/intel/compiler60/ia32/include/xstring
*/opt/intel/compiler60/ia32/include/xtree
*/opt/intel/compiler60/ia32/include/xutility
*/opt/intel/compiler60/ia32/include/ymath.h
*/opt/intel/compiler60/ia32/lib/libcprts.a
*/opt/intel/compiler60/ia32/lib/libcprts.so
*/opt/intel/compiler60/ia32/lib/libcprts.so.1
*/opt/intel/compiler60/ia32/lib/libguide.a
*/opt/intel/compiler60/ia32/lib/libguide.so
*/opt/intel/compiler60/ia32/lib/libunwind.so
*/opt/intel/compiler60/ia32/lib/libunwind.so.1

View File

@ -272,7 +272,11 @@ main(int argc, char *argv[], char *envp[])
/* prepend "-melf_i386" to the commandline */
if (i == 0) {
addarg(&al, argv[0], 1);
#if __FreeBSD_version < 500042
addarg(&al, "-melf_i386", 1);
#else
addarg(&al, "-melf_i386_fbsd", 1);
#endif
continue;
}
@ -370,7 +374,7 @@ main(int argc, char *argv[], char *envp[])
* dynamic versions have glibc dependencies.
* Don't add superfluous -Bdynamic.
*/
if (ARGCMP("-Bdynamic") && i <= argc + 1) {
if (ARGCMP("-Bdynamic") && i < argc - 1) {
if (!strcmp(argv[i + 1], "-lcxa") ||
(cpp && !strcmp(argv[i + 1], "-lunwind"))) {
addarg(&al, "-Bstatic", 1);
@ -383,7 +387,7 @@ main(int argc, char *argv[], char *envp[])
}
/* Don't add superfluous -Bstatic. */
if (ARGCMP("-Bstatic") && i <= argc + 1 &&
if (ARGCMP("-Bstatic") && i < argc - 1 &&
(!strcmp(argv[i + 1], "-lcprts") ||
(!cpp && !strcmp(argv[i + 1], "-lunwind"))))
continue;

View File

@ -737,7 +737,6 @@ intel/compiler60/ia32/include/sse2mmx.h
intel/compiler60/ia32/include/stdarg.h
intel/compiler60/ia32/include/stdbool.h
intel/compiler60/ia32/include/stddef.h
intel/compiler60/ia32/include/stdiostream.h
intel/compiler60/ia32/include/typeinfo
intel/compiler60/ia32/include/varargs.h
intel/compiler60/ia32/include/xmmintrin.h