diff options
author | kent <kent@pkgsrc.org> | 2001-10-21 12:24:15 +0000 |
---|---|---|
committer | kent <kent@pkgsrc.org> | 2001-10-21 12:24:15 +0000 |
commit | cbeea2b88c3d31505ee6c13b1d176f317cfde9f6 (patch) | |
tree | 3e243a31dfa5a6bdbb463c0ad48f58b723a36ce7 /cross | |
parent | e65d4b62060352c1ecc87592893efcf5bc811121 (diff) | |
download | pkgsrc-cbeea2b88c3d31505ee6c13b1d176f317cfde9f6.tar.gz |
Sync with PEACE repositry.
- Apply stack-protection patch.
- Upgrade binutils: 2.9.1 -> 2.11.2.
This package does not use cross-binutils-2.9.1
Diffstat (limited to 'cross')
-rw-r--r-- | cross/i386-netbsdpe/Makefile | 19 | ||||
-rw-r--r-- | cross/i386-netbsdpe/distinfo | 9 | ||||
-rw-r--r-- | cross/i386-netbsdpe/files/cross.mk | 65 | ||||
-rw-r--r-- | cross/i386-netbsdpe/patches/binutils-aa | 16 | ||||
-rw-r--r-- | cross/i386-netbsdpe/patches/binutils-ab | 12 | ||||
-rw-r--r-- | cross/i386-netbsdpe/patches/binutils-ac | 13 | ||||
-rw-r--r-- | cross/i386-netbsdpe/patches/binutils-ad | 20 | ||||
-rw-r--r-- | cross/i386-netbsdpe/patches/patch-de | 46 |
8 files changed, 135 insertions, 65 deletions
diff --git a/cross/i386-netbsdpe/Makefile b/cross/i386-netbsdpe/Makefile index aa7c6539d02..b2518264f2e 100644 --- a/cross/i386-netbsdpe/Makefile +++ b/cross/i386-netbsdpe/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.7 2001/03/10 21:15:27 wiz Exp $ -# +# $NetBSD: Makefile,v 1.8 2001/10/21 12:24:15 kent Exp $ +# $PEACE: Makefile,v 1.16 2001/10/19 07:43:09 kent Exp $ -DISTVERSION= 1.1.4 -DISTFILES= # none +DISTVERSION= 1.2.1 +CROSS_DISTFILES= # none MAINTAINER= peace-sacrifice@hauN.org HOMEPAGE= http://chiharu.hauN.org/peace/ @@ -27,11 +27,18 @@ GCC_CONFIGURE_ARGS+= --enable-threads BINUTILS_EXTRAS= dlltool windres +# Mingw pathes GCC_WIN32_PATCHBUNDLE= ${GCC_DISTNAME}-x86-win32-patches.tar.gz GCC_WIN32_PATCH= ${WRKDIR}/${GCC_DISTNAME}-patches/${GCC_DISTNAME}-x86-win32.diff MASTER_SITES+= ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/mingw32/${GCC_DISTNAME}/patches/ CROSS_DISTFILES+= ${GCC_WIN32_PATCHBUNDLE} +# SSP patch +MASTER_SITES+= http://www.trl.ibm.com/projects/security/ssp/gcc2_95_2/ +SSP_PATCH= protector-2.95.2-2.tar.gz +CROSS_DISTFILES+= ${SSP_PATCH} + +# pthread PTHREAD_DISTNAME= unproven-pthreads-0.17 PTHREAD_DISTFILE= ${PTHREAD_DISTNAME}.tar.gz MASTER_SITES+= ftp://ftp.flame.org/pub/netbsd/ @@ -54,6 +61,10 @@ post-patch: cd ${WRKDIR}/${GCC_DISTNAME}/gcc && \ ${LN} -s ../../${PTHREAD_DISTNAME}/include/pthread.h . && \ ${LN} -s ../../${PTHREAD_DISTNAME}/include/pthread . + cd ${WRKDIR} && /usr/bin/tar zxf ${_DISTDIR}/${SSP_PATCH} + ${CP} ${WRKDIR}/protector.c ${WRKDIR}/protector.h ${WRKDIR}/${GCC_DISTNAME}/gcc/ + ${PATCH} -d ${WRKDIR}/${GCC_DISTNAME} --forward --quiet -E < ${WRKDIR}/protector.dif +# ${PATCH} -d ${WRKDIR}/${GCC_DISTNAME} --forward --quiet -E < ${WRKDIR}/protectonly.dif CFLAGS_FOR_TARGET+= -I${WRKDIR} post-configure: diff --git a/cross/i386-netbsdpe/distinfo b/cross/i386-netbsdpe/distinfo index f7122221d46..00c2216ccdc 100644 --- a/cross/i386-netbsdpe/distinfo +++ b/cross/i386-netbsdpe/distinfo @@ -1,16 +1,19 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:24 skrll Exp $ +$NetBSD: distinfo,v 1.3 2001/10/21 12:24:15 kent Exp $ SHA1 (gcc-2.95.2-x86-win32-patches.tar.gz) = 8018d7a1c32211fc7a2f413cd49c422f7ccfd2ec Size (gcc-2.95.2-x86-win32-patches.tar.gz) = 217965 bytes +SHA1 (protector-2.95.2-2.tar.gz) = 7b906b45e4e08e414ec8bca611d5371d82994401 +Size (protector-2.95.2-2.tar.gz) = 17034 bytes SHA1 (unproven-pthreads-0.17.tar.gz) = 9f50e31da916b341e0c1ce21012bbd95b1a08a7d Size (unproven-pthreads-0.17.tar.gz) = 234180 bytes -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes +SHA1 (binutils-2.11.2.tar.gz) = 4095688f3478e8d4693ad2b965008a49f033e08f +Size (binutils-2.11.2.tar.gz) = 9934295 bytes SHA1 (gcc-2.95.2.tar.gz) = c3da103de3fa97c78ccc1b4fdc29fa25bf26a6c8 Size (gcc-2.95.2.tar.gz) = 12885815 bytes SHA1 (patch-aa) = cd270eb18e0b65641a416c1215388dc9fb91f33d SHA1 (patch-co) = 8a6ca102d76ebda1dc4edf5d65da2a5d4cedb183 SHA1 (patch-cp) = f94a5dfdb13cf00cc06854617defa56e8370d3b8 SHA1 (patch-cq) = f897fef519f7966de094d25954073b9a2a793891 +SHA1 (patch-de) = 8618f7e14bc76cb0d45ebe52bbd8f71b5e64bb2a SHA1 (patch-ma) = 4cd59064a5bb813d7ecf560d5038f7ba1a67b733 SHA1 (patch-pe) = 4875256eed89dcb9b635c97c70cbdfce49ddd1b9 diff --git a/cross/i386-netbsdpe/files/cross.mk b/cross/i386-netbsdpe/files/cross.mk index 5ee654a7dd6..684e3b3f9f1 100644 --- a/cross/i386-netbsdpe/files/cross.mk +++ b/cross/i386-netbsdpe/files/cross.mk @@ -1,5 +1,4 @@ -# $NetBSD: cross.mk,v 1.6 2001/03/10 21:15:27 wiz Exp $ -# $PEACE: cross.mk,v 1.1 2001/01/16 15:20:26 kent Exp $ +# $PEACE: cross.mk,v 1.6 2001/10/19 07:43:10 kent Exp $ # based on pkgsrc/cross/COMMON/cross.mk # NetBSD: cross.mk,v 1.16 2000/11/09 13:04:55 wiz Exp @@ -10,6 +9,7 @@ DISTNAME= cross-${TARGET_ARCH}-${DISTVERSION} CATEGORIES+= cross lang USE_CROSSBASE= yes PLIST_SRC= ${WRKDIR}/.PLIST_SRC +MESSAGE_SUBST+= CROSSBASE=${CROSSBASE} HOMEPAGE?= http://gcc.gnu.org/ @@ -29,31 +29,25 @@ pre-install-dirs: ${INSTALL_DATA_DIR} ${TARGET_DIR}/lib .if defined(USE_CROSS_BINUTILS) -BINUTILS_DISTNAME= binutils-2.9.1 +BINUTILS_DISTNAME= binutils-2.11.2 BINUTILS_WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} CROSS_DISTFILES+= ${BINUTILS_DISTNAME}.tar.gz MASTER_SITES+= ${MASTER_SITE_GNU:=binutils/} CONFIGURE_ARGS+= --with-gnu-as --with-gnu-ld -DEPENDS+= cross-binutils>=2.9.1.1:../../cross/binutils +#DEPENDS+= cross-binutils>=2.9.1.1:../../cross/binutils PLIST_PRE+= ${COMMON_DIR}/PLIST-binutils AS_FOR_TARGET= ${BINUTILS_WRKSRC}/gas/as-new -AR_FOR_TARGET= ${WRKDIR}/ar -NM_FOR_TARGET= ${WRKDIR}/nm -RANLIB_FOR_TARGET= ${WRKDIR}/ranlib -LD_FOR_TARGET= ${WRKDIR}/ld +AR_FOR_TARGET= ${BINUTILS_WRKSRC}/binutils/ar +NM_FOR_TARGET= ${BINUTILS_WRKSRC}/binutils/nm-new +RANLIB_FOR_TARGET= ${BINUTILS_WRKSRC}/binutils/ranlib +LD_FOR_TARGET= ${BINUTILS_WRKSRC}/ld/ld-new -pre-patch: binutils-patch pre-configure: binutils-configure do-build: binutils-build do-install: binutils-install -binutils-patch: - @for i in ${COMMON_DIR}/patches-binutils/patch-*; do \ - ${PATCH} -d ${BINUTILS_WRKSRC} --forward --quiet -E < $$i; \ - done - BFD64ARG= --enable-64-bit-bfd binutils-configure: @@ -63,32 +57,16 @@ binutils-configure: --target=${TARGET_ARCH} ${BFD64ARG} binutils-build: - @cd ${BINUTILS_WRKSRC}/bfd && ${SETENV} ${MAKE_ENV} \ - ${MAKE_PROGRAM} ${MAKE_FLAGS} bfd.h - @cd ${BINUTILS_WRKSRC}/libiberty && ${SETENV} ${MAKE_ENV} \ - ${MAKE_PROGRAM} ${MAKE_FLAGS} all - @cd ${BINUTILS_WRKSRC}/gas && ${SETENV} ${MAKE_ENV} \ - ${MAKE_PROGRAM} ${MAKE_FLAGS} as-new - ${TEST} -x ${WRKDIR}/ar || ${LINK.c} -o ${WRKDIR}/ar \ - -DPREFIX=\"${PREFIX}\" \ - -DGNUTARGET=\"${BINUTILS_GNUTARGET}\" \ - ${COMMON_DIR}/buwrapper.c - @cd ${WRKDIR} && \ - ${LN} -f ar nm && \ - ${LN} -f ar ranlib - ${TEST} -x ${WRKDIR}/ld || ${LINK.c} -o ${WRKDIR}/ld \ - -DPREFIX=\"${PREFIX}\" \ - -DGNUTARGET=\"${BINUTILS_GNUTARGET}\" \ - -DLDEMULATION=\"${BINUTILS_LDEMULATION}\" \ - -DLD_RPATH_LINK=\"${TARGET_DIR}/lib\" \ - ${COMMON_DIR}/buwrapper.c + @cd ${BINUTILS_WRKSRC} && ${SETENV} ${MAKE_ENV} \ + ${MAKE_PROGRAM} ${MAKE_FLAGS} binutils-install: ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/gas/as-new ${TARGET_DIR}/bin/as - ${INSTALL_PROGRAM} ${WRKDIR}/ar ${TARGET_DIR}/bin/ar - ${INSTALL_PROGRAM} ${WRKDIR}/ld ${TARGET_DIR}/bin/ld - for i in addr2line nm objcopy objdump ranlib size strings strip ${BINUTILS_EXTRAS}; do \ - ${LN} -f ${TARGET_DIR}/bin/ar ${TARGET_DIR}/bin/$$i; \ + ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/ld/ld-new ${TARGET_DIR}/bin/ld + ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/binutils/nm-new ${TARGET_DIR}/bin/nm + ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/binutils/strip-new ${TARGET_DIR}/bin/strip + for i in addr2line ar objcopy objdump ranlib size strings ${BINUTILS_EXTRAS}; do \ + ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/binutils/$$i ${TARGET_DIR}/bin/$$i; \ done for i in addr2line ar as ld nm objcopy objdump ranlib size strings strip ${BINUTILS_EXTRAS}; do \ ${LN} -f ${TARGET_DIR}/bin/$$i ${PREFIX}/bin/${TARGET_ARCH}-$$i; \ @@ -97,12 +75,10 @@ binutils-install: .if defined(USE_CROSS_GCC) GCC_DISTNAME= gcc-2.95.2 -#EGCS_DISTDIR= releases/${EGCS_DISTNAME} GCC_INTVERSION= 2.95.2 -#EGCS_PATCHBUNDLE= ${EGCS_DISTNAME}-NetBSD-19980104.diff.gz GCC_WRKSRC= ${WRKDIR}/${GCC_DISTNAME} GCC_LANGUAGES= c # add to these below -BUILD_DEPENDS+= ${LOCALBASE}/bin/autoheader:../../devel/autoconf +BUILD_DEPENDS+= autoconf-*:../../devel/autoconf .if defined(GCC_CXX) CXX_CONFIGURE_ARGS+= --with-gxx-include-dir=${TARGET_DIR}/include/c++ @@ -132,8 +108,6 @@ PLIST_PRE+= ${GCC_PLIST_DIR}/PLIST-gcc-objc-runtime # the main PLIST needs to go last to get the @dirrm's right PLIST_PRE+= ${GCC_PLIST_DIR}/PLIST-gcc CROSS_DISTFILES+= ${GCC_DISTNAME}.tar.gz #${EGCS_PATCHBUNDLE} -#MASTER_SITES+= ftp://egcs.cygnus.com/pub/egcs/${EGCS_DISTDIR}/ \ -# ${MASTER_SITE_LOCAL} USE_GMAKE= yes CC_FOR_TARGET= ${GCC_WRKSRC}/gcc/xgcc -B${GCC_WRKSRC}/gcc/ ${CFLAGS_FOR_TARGET} @@ -155,7 +129,7 @@ GCC_MAKE= ${SETENV} ${MAKE_ENV} \ ${MAKE_PROGRAM} ${MAKE_FLAGS} ${GCC_MAKE_FLAGS} .if defined(GCC_FAKE_RUNTIME) -CROSS_SYS_INCLUDE= ${WRKDIR}/include +CROSS_SYS_INCLUDE= ${WRKDIR}/include .endif .if defined(CROSS_SYS_INCLUDE) CFLAGS_FOR_TARGET+= -idirafter ${CROSS_SYS_INCLUDE} @@ -186,8 +160,7 @@ gcc-configure: --host=${MACHINE_GNU_ARCH}--netbsd --target=${TARGET_ARCH} \ ${GCC_CONFIGURE_ARGS} ${CXX_CONFIGURE_ARGS} .if defined(GCC_FAKE_RUNTIME) - @${MKDIR} ${CROSS_SYS_INCLUDE} ${CROSS_SYS_INCLUDE}/machine \ - ${CROSS_SYS_INCLUDE}/sys + @${MKDIR} ${CROSS_SYS_INCLUDE} ${CROSS_SYS_INCLUDE}/machine ${CROSS_SYS_INCLUDE}/sys @cd ${CROSS_SYS_INCLUDE} && ${TOUCH} ${TOUCH_FLAGS} machine/ansi.h \ sys/time.h stdlib.h unistd.h .endif @@ -228,7 +201,7 @@ gcc-install: .if defined(GCC_CXX) @${MKDIR} ${TARGET_DIR}/include/c++ @for file in exception new new.h typeinfo; do \ - ${CP} -p ${GCC_WRKSRC}/gcc/cp/inc/$$file ${TARGET_DIR}/include/c++; \ + ${INSTALL_DATA} ${GCC_WRKSRC}/gcc/cp/inc/$$file ${TARGET_DIR}/include/c++; \ done .if defined(GCC_CXX_RUNTIME) @${MKDIR} ${TARGET_DIR}/include/g++/std diff --git a/cross/i386-netbsdpe/patches/binutils-aa b/cross/i386-netbsdpe/patches/binutils-aa index b0b9e9b7e84..69bc170687d 100644 --- a/cross/i386-netbsdpe/patches/binutils-aa +++ b/cross/i386-netbsdpe/patches/binutils-aa @@ -1,13 +1,15 @@ ---- bfd/config.bfd.dist Sun Oct 1 20:56:02 2000 -+++ bfd/config.bfd Sun Oct 1 20:56:55 2000 -@@ -195,6 +195,10 @@ - targ_selvecs=i386bsd_vec - targ_underscore=yes +$NetBSD: binutils-aa,v 1.2 2001/10/21 12:24:16 kent Exp $ + +--- bfd/config.bfd.dist Thu Jun 14 20:16:59 2001 ++++ bfd/config.bfd +@@ -351,6 +351,10 @@ + targ_defvec=bfd_elf32_i386_vec + targ_selvecs=i386netbsd_vec ;; + i[3456]86-*-netbsdpe*) + targ_defvec=i386pe_vec + targ_selvecs="i386pe_vec i386pei_vec" + ;; - i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) + i[3456]86-*-netbsdaout* | i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) targ_defvec=i386netbsd_vec - targ_selvecs=i386bsd_vec + targ_selvecs="bfd_elf32_i386_vec i386bsd_vec" diff --git a/cross/i386-netbsdpe/patches/binutils-ab b/cross/i386-netbsdpe/patches/binutils-ab index fbdb0b51b09..2357aed8ffe 100644 --- a/cross/i386-netbsdpe/patches/binutils-ab +++ b/cross/i386-netbsdpe/patches/binutils-ab @@ -1,10 +1,12 @@ ---- gas/configure.in.dist Sun Oct 1 20:59:05 2000 -+++ gas/configure.in Sun Oct 1 20:59:46 2000 -@@ -150,6 +150,7 @@ - i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;; +$NetBSD: binutils-ab,v 1.2 2001/10/21 12:24:16 kent Exp $ + +--- gas/configure.in.dist Mon Jun 11 19:04:44 2001 ++++ gas/configure.in +@@ -240,6 +240,7 @@ + i386-*-beoself* | i386-*-beos*) fmt=elf bfd_gas=yes ;; i386-*-bsd*) fmt=aout em=386bsd ;; i386-*-netbsd0.8) fmt=aout em=386bsd ;; + i386-*-netbsdpe*) fmt=coff em=pe bfd_gas=yes ;; i386-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes;; i386-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes;; - i386-*-linux*aout* | i386-*-linuxoldld) fmt=aout em=linux ;; + i386-*-linux*aout* | i386-*-linux*oldld) fmt=aout em=linux ;; diff --git a/cross/i386-netbsdpe/patches/binutils-ac b/cross/i386-netbsdpe/patches/binutils-ac new file mode 100644 index 00000000000..e4150e08776 --- /dev/null +++ b/cross/i386-netbsdpe/patches/binutils-ac @@ -0,0 +1,13 @@ +$NetBSD: binutils-ac,v 1.1 2001/10/21 12:24:16 kent Exp $ + +--- ld/configure.tgt.dist Mon Jun 11 19:05:08 2001 ++++ ld/configure.tgt +@@ -144,6 +144,8 @@ + i[3456]86-*-solaris2*) targ_emul=elf_i386 ;; + i[3456]86-*-unixware) targ_emul=elf_i386 ;; + i[3456]86-*-solaris*) targ_emul=elf_i386 ;; ++i[3456]86-*-netbsdpe*) targ_emul=i386pe ; ++ targ_extra_ofiles="deffilep.o pe-dll.o" ;; + i[3456]86-*-netbsd*) targ_emul=i386nbsd ;; + i[3456]86-*-netware) targ_emul=i386nw ;; + i[3456]86-*-elf*) targ_emul=elf_i386 ;; diff --git a/cross/i386-netbsdpe/patches/binutils-ad b/cross/i386-netbsdpe/patches/binutils-ad new file mode 100644 index 00000000000..5107dd33ff3 --- /dev/null +++ b/cross/i386-netbsdpe/patches/binutils-ad @@ -0,0 +1,20 @@ +$NetBSD: binutils-ad,v 1.1 2001/10/21 12:24:16 kent Exp $ + +--- bfd/cofflink.c.orig Thu Jun 7 12:08:24 2001 ++++ bfd/cofflink.c +@@ -708,6 +708,15 @@ + long_section_names = false; + for (o = abfd->sections; o != NULL; o = o->next) + { ++#if 0 ++ fprintf(stderr, "_bfd_coff_final_link: %s%s%s%s%s\n", o->name ++ o->flags & SEC_CODE ? " SEC_CODE" : "", ++ o->flags & SEC_DATA ? " SEC_DATA" : "", ++ o->flags & SEC_ALLOC ? " SEC_ALLOC" : "", ++ o->flags & SEC_READONLY ? " SEC_READONLY" : ""); ++#endif ++ if (o->flags & SEC_CODE && o->flags & SEC_DATA) ++ o->flags &= ~SEC_DATA; + o->reloc_count = 0; + o->lineno_count = 0; + for (p = o->link_order_head; p != NULL; p = p->next) diff --git a/cross/i386-netbsdpe/patches/patch-de b/cross/i386-netbsdpe/patches/patch-de new file mode 100644 index 00000000000..6778f128899 --- /dev/null +++ b/cross/i386-netbsdpe/patches/patch-de @@ -0,0 +1,46 @@ +$NetBSD: patch-de,v 1.1 2001/10/21 12:24:16 kent Exp $ + +--- gcc/cp/decl.c~ Tue Mar 27 22:17:25 2001 ++++ gcc/cp/decl.c +@@ -10266,8 +10266,18 @@ + ignore_attrs = 0; + else if (inner_attrs) + { +- decl_attributes (type, inner_attrs, NULL_TREE); +- inner_attrs = NULL_TREE; ++ /*decl_attributes (type, inner_attrs, NULL_TREE);*/ ++ /* Create a dummy decl to pass to decl_attributes. The ++ attributes will be added to a variant of type, and this ++ new variant type can be retrieved from the dummy decl. ++ Passing type directly causes the attributes to be added ++ to type, which is wrong because type may be used ++ elsewhere without attributes. */ ++ ++ tree dummy = build_decl (TYPE_DECL, NULL_TREE, type); ++ decl_attributes (dummy, inner_attrs, NULL_TREE); ++ type = TREE_TYPE (dummy); ++ inner_attrs = NULL_TREE; + } + + switch (TREE_CODE (declarator)) +@@ -10969,7 +10979,19 @@ + if (inner_attrs) + { + if (! ignore_attrs) +- decl_attributes (type, inner_attrs, NULL_TREE); ++ /*decl_attributes (type, inner_attrs, NULL_TREE);*/ ++ { ++ /* Create a dummy decl to pass to decl_attributes. The ++ attributes will be added to a variant of type, and this ++ new variant type can be retrieved from the dummy decl. ++ Passing type directly causes the attributes to be added ++ to type, which is wrong because type may be used ++ elsewhere without attributes. */ ++ ++ tree dummy = build_decl (TYPE_DECL, NULL_TREE, type); ++ decl_attributes (dummy, inner_attrs, NULL_TREE); ++ type = TREE_TYPE (dummy); ++ } + else if (attrlist) + TREE_VALUE (attrlist) = chainon (inner_attrs, TREE_VALUE (attrlist)); + else |