From 1cd5dcea8a82cbcaaa2aaf8597a1af3beae8d04b Mon Sep 17 00:00:00 2001 From: seb Date: Sat, 10 Apr 2004 15:47:08 +0000 Subject: Make all gcc3-* packages use a single distinfo file from gcc3/distinfo and a single patch directory from gcc3/patches/. Also Move gcc3-c/{Makefile.common,language.mk} into gcc3/. --- lang/gcc3-ada/Makefile | 4 +- lang/gcc3-ada/distinfo | 10 ---- lang/gcc3-ada/patches/patch-aa | 17 ------ lang/gcc3-ada/patches/patch-ad | 13 ----- lang/gcc3-ada/patches/patch-ae | 44 -------------- lang/gcc3-ada/patches/patch-af | 13 ----- lang/gcc3-ada/patches/patch-ag | 22 ------- lang/gcc3-ada/patches/patch-ah | 36 ------------ lang/gcc3-c++/Makefile | 6 +- lang/gcc3-c++/distinfo | 7 --- lang/gcc3-c++/patches/patch-aa | 15 ----- lang/gcc3-c++/patches/patch-af | 18 ------ lang/gcc3-c++/patches/patch-ag | 13 ----- lang/gcc3-c/Makefile | 8 ++- lang/gcc3-c/Makefile.common | 117 ------------------------------------- lang/gcc3-c/distinfo | 9 --- lang/gcc3-c/language.mk | 14 ----- lang/gcc3-c/patches/patch-ab | 12 ---- lang/gcc3-c/patches/patch-ae | 9 --- lang/gcc3-c/patches/patch-af | 18 ------ lang/gcc3-c/patches/patch-ag | 13 ----- lang/gcc3-c/patches/patch-ai | 13 ----- lang/gcc3-f77/Makefile | 4 +- lang/gcc3-f77/distinfo | 5 -- lang/gcc3-f77/patches/patch-aa | 17 ------ lang/gcc3-java/Makefile | 4 +- lang/gcc3-java/distinfo | 5 -- lang/gcc3-java/patches/patch-aa | 28 --------- lang/gcc3-objc/Makefile | 4 +- lang/gcc3-objc/distinfo | 5 -- lang/gcc3-objc/patches/patch-aa | 17 ------ lang/gcc3/Makefile | 3 +- lang/gcc3/Makefile.common | 125 ++++++++++++++++++++++++++++++++++++++++ lang/gcc3/distinfo | 15 +++++ lang/gcc3/language.mk | 14 +++++ lang/gcc3/patches/patch-aa | 28 +++++++++ lang/gcc3/patches/patch-ab | 12 ++++ lang/gcc3/patches/patch-ae | 9 +++ lang/gcc3/patches/patch-af | 18 ++++++ lang/gcc3/patches/patch-ag | 13 +++++ lang/gcc3/patches/patch-ai | 13 +++++ lang/gcc3/patches/patch-aj | 13 +++++ lang/gcc3/patches/patch-ak | 44 ++++++++++++++ lang/gcc3/patches/patch-al | 13 +++++ lang/gcc3/patches/patch-am | 22 +++++++ lang/gcc3/patches/patch-an | 36 ++++++++++++ 46 files changed, 395 insertions(+), 503 deletions(-) delete mode 100644 lang/gcc3-ada/distinfo delete mode 100644 lang/gcc3-ada/patches/patch-aa delete mode 100644 lang/gcc3-ada/patches/patch-ad delete mode 100644 lang/gcc3-ada/patches/patch-ae delete mode 100644 lang/gcc3-ada/patches/patch-af delete mode 100644 lang/gcc3-ada/patches/patch-ag delete mode 100644 lang/gcc3-ada/patches/patch-ah delete mode 100644 lang/gcc3-c++/distinfo delete mode 100644 lang/gcc3-c++/patches/patch-aa delete mode 100644 lang/gcc3-c++/patches/patch-af delete mode 100644 lang/gcc3-c++/patches/patch-ag delete mode 100644 lang/gcc3-c/Makefile.common delete mode 100644 lang/gcc3-c/distinfo delete mode 100644 lang/gcc3-c/language.mk delete mode 100644 lang/gcc3-c/patches/patch-ab delete mode 100644 lang/gcc3-c/patches/patch-ae delete mode 100644 lang/gcc3-c/patches/patch-af delete mode 100644 lang/gcc3-c/patches/patch-ag delete mode 100644 lang/gcc3-c/patches/patch-ai delete mode 100644 lang/gcc3-f77/distinfo delete mode 100644 lang/gcc3-f77/patches/patch-aa delete mode 100644 lang/gcc3-java/distinfo delete mode 100644 lang/gcc3-java/patches/patch-aa delete mode 100644 lang/gcc3-objc/distinfo delete mode 100644 lang/gcc3-objc/patches/patch-aa create mode 100644 lang/gcc3/Makefile.common create mode 100644 lang/gcc3/distinfo create mode 100644 lang/gcc3/language.mk create mode 100644 lang/gcc3/patches/patch-aa create mode 100644 lang/gcc3/patches/patch-ab create mode 100644 lang/gcc3/patches/patch-ae create mode 100644 lang/gcc3/patches/patch-af create mode 100644 lang/gcc3/patches/patch-ag create mode 100644 lang/gcc3/patches/patch-ai create mode 100644 lang/gcc3/patches/patch-aj create mode 100644 lang/gcc3/patches/patch-ak create mode 100644 lang/gcc3/patches/patch-al create mode 100644 lang/gcc3/patches/patch-am create mode 100644 lang/gcc3/patches/patch-an diff --git a/lang/gcc3-ada/Makefile b/lang/gcc3-ada/Makefile index cd899da6a6b..b9a6db0e232 100644 --- a/lang/gcc3-ada/Makefile +++ b/lang/gcc3-ada/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.9 2004/02/01 14:05:46 jlam Exp $ +# $NetBSD: Makefile,v 1.10 2004/04/10 15:47:08 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-ada-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - Ada compiler @@ -6,7 +6,7 @@ COMMENT= GNU Compiler Collection, v3 - Ada compiler INFO_FILES= gnat_ug_unx.info gnat_ug_vms.info gnat_ug_vxw.info INFO_FILES+= gnat_ug_wnt.info gnat_rm.info gnat-style.info -.include "../gcc3-c/language.mk" +.include "../../lang/gcc3/language.mk" PTHREAD_OPTS+= require native CONFIGURE_ARGS+= --enable-languages="ada" diff --git a/lang/gcc3-ada/distinfo b/lang/gcc3-ada/distinfo deleted file mode 100644 index 4e00848ea6b..00000000000 --- a/lang/gcc3-ada/distinfo +++ /dev/null @@ -1,10 +0,0 @@ -$NetBSD: distinfo,v 1.9 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-aa) = 541cd543720cccc24aa60b9ac26cfa6143e7e5d4 -SHA1 (patch-ad) = 80fead3fdfba3f93a89a7294b45f9633454d35fb -SHA1 (patch-ae) = 9df2be9ed9f92218efce073ed0a727c0311630d0 -SHA1 (patch-af) = 6294061358e2b618a980e77cbf7bad6231feacbe -SHA1 (patch-ag) = 8eff72d76b135a9b0318de651341cb08976758b5 -SHA1 (patch-ah) = c0795339102b4608a3813c3a2d488c71ea972d6f diff --git a/lang/gcc3-ada/patches/patch-aa b/lang/gcc3-ada/patches/patch-aa deleted file mode 100644 index f448803207a..00000000000 --- a/lang/gcc3-ada/patches/patch-aa +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2003/07/08 15:04:54 drochner Exp $ - ---- Makefile.in.orig 2003-05-14 02:18:14.000000000 +0200 -+++ Makefile.in 2003-07-03 18:02:24.000000000 +0200 -@@ -1642,9 +1642,9 @@ - - install-dosrel-fake: - --ALL_GCC = all-gcc --ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss --ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 -+#ALL_GCC = all-gcc -+#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss -+#ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 - - # This is a list of inter-dependencies among modules. - all-ash: diff --git a/lang/gcc3-ada/patches/patch-ad b/lang/gcc3-ada/patches/patch-ad deleted file mode 100644 index ffed85a8423..00000000000 --- a/lang/gcc3-ada/patches/patch-ad +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ad,v 1.1 2003/07/06 12:15:05 drochner Exp $ - ---- gcc/ada/Make-lang.in.orig 2003-07-06 11:48:22.000000000 +0200 -+++ gcc/ada/Make-lang.in 2003-07-06 11:48:44.000000000 +0200 -@@ -210,7 +210,7 @@ - $(LIBIBERTY) $(LIBS) $(SYSLIBS) - - # use target-gcc target-gnatmake target-gnatbind target-gnatlink --gnattools: $(GCC_PARTS) $(CONFIG_H) prefix.o force -+gnattools: $(CONFIG_H) prefix.o force - $(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \ - ADA_INCLUDES="-I- -I../rts"\ - CC="../../xgcc -B../../" STAGE_PREFIX=../../ gnattools1 diff --git a/lang/gcc3-ada/patches/patch-ae b/lang/gcc3-ada/patches/patch-ae deleted file mode 100644 index 76292482619..00000000000 --- a/lang/gcc3-ada/patches/patch-ae +++ /dev/null @@ -1,44 +0,0 @@ -$NetBSD: patch-ae,v 1.4 2003/12/08 18:33:53 drochner Exp $ - ---- gcc/ada/Makefile.in.orig 2003-07-04 13:53:53.000000000 -0600 -+++ gcc/ada/Makefile.in -@@ -1028,6 +1028,30 @@ ifeq ($(strip $(filter-out cygwin32% min - EXTRA_GNATRTL_NONTASKING_OBJS = g-regist.o - endif - -+ifeq ($(strip $(filter-out %86 netbsdelf%,$(arch) $(osys))),) -+ LIBGNAT_TARGET_PAIRS = \ -+ a-numaux.adb<86numaux.adb \ -+ a-numaux.ads<86numaux.ads \ -+ a-intnam.ads<4netbsdintnam.ads \ -+ s-inmaop.adb<7sinmaop.adb \ -+ s-intman.adb<5netbsdintman.adb \ -+ s-mastop.adb<5omastop.adb \ -+ s-osinte.adb<5netbsdosinte.adb \ -+ s-osinte.ads<5netbsdosinte.ads \ -+ s-osprim.adb<5posprim.adb \ -+ s-parame.adb<5netbsdparame.adb \ -+ s-taprop.adb<5netbsdtaprop.adb \ -+ s-tasinf.ads<5ftasinf.ads \ -+ s-taspri.ads<7staspri.ads \ -+ s-tpopse.adb<5netbsdtpopse.adb \ -+ s-tpopsp.adb<7netbsdtpopsp.adb \ -+ system.ads<5netbsdsystem.ads -+ -+ THREADSLIB=-pthread -+ EXTRA_GNATRTL_TASKING_OBJS=adasignal.o ada_lwp_self.o -+ -+endif -+ - # The runtime library for gnat comprises two directories. One contains the - # Ada source files that the compiler (gnat1) needs -- these files are listed - # by ADA_INCLUDE_SRCS -- and the other contains the object files and their -@@ -1609,7 +1633,7 @@ gnattools2: ../stamp-tools - TOOLSCASE=native \ - ../../gnatchop$(exeext) ../../gnat$(exeext) ../../gnatkr$(exeext) \ - ../../gnatls$(exeext) ../../gnatprep$(exeext) \ -- ../../gnatpsta$(exeext) ../../gnatxref$(exeext) \ -+ ../../gnatxref$(exeext) \ - ../../gnatfind$(exeext) ../../gnatname$(exeext) - - # These tools are only built for the native version. diff --git a/lang/gcc3-ada/patches/patch-af b/lang/gcc3-ada/patches/patch-af deleted file mode 100644 index 3169e0e7f3a..00000000000 --- a/lang/gcc3-ada/patches/patch-af +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-af,v 1.1 2003/12/08 18:33:53 drochner Exp $ - ---- gcc/ada/cstreams.c.orig 2003-12-01 15:24:51.000000000 -0700 -+++ gcc/ada/cstreams.c -@@ -180,7 +180,7 @@ __gnat_full_name (nam, buffer) - #elif defined (MSDOS) - _fixpath (nam, buffer); - --#elif defined (sgi) -+#elif defined (sgi) || defined (__NetBSD__) - - /* Use realpath function which resolves links and references to .. and .. - on those Unix systems that support it. Note that GNU/Linux provides it but diff --git a/lang/gcc3-ada/patches/patch-ag b/lang/gcc3-ada/patches/patch-ag deleted file mode 100644 index 4c9410f9457..00000000000 --- a/lang/gcc3-ada/patches/patch-ag +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-ag,v 1.1 2003/12/08 18:42:23 drochner Exp $ - ---- gcc/ada/adaint.c.orig 2002-11-18 07:39:46.000000000 -0700 -+++ gcc/ada/adaint.c -@@ -636,6 +636,8 @@ __gnat_open_new_temp (path, fmode) - return mkstemp (path); - #elif defined (__Lynx__) - mktemp (path); -+#elif defined(__NetBSD__) -+ return mkstemp (path); - #else - if (mktemp (path) == NULL) - return -1; -@@ -703,7 +705,7 @@ __gnat_tmp_name (tmp_filename) - free (pname); - } - --#elif defined (linux) -+#elif defined (linux) || defined (__NetBSD__) - char *tmpdir = getenv ("TMPDIR"); - - if (tmpdir == NULL) diff --git a/lang/gcc3-ada/patches/patch-ah b/lang/gcc3-ada/patches/patch-ah deleted file mode 100644 index 643d95c53d2..00000000000 --- a/lang/gcc3-ada/patches/patch-ah +++ /dev/null @@ -1,36 +0,0 @@ -$NetBSD: patch-ah,v 1.1 2003/12/08 18:42:23 drochner Exp $ - ---- gcc/ada/i-cstrea.ads.orig 2002-10-23 01:33:26.000000000 -0600 -+++ gcc/ada/i-cstrea.ads -@@ -179,9 +179,6 @@ package Interfaces.C_Streams is - - function isatty (handle : int) return int; - -- procedure mktemp (template : chars); -- -- The return value (which is just a pointer to template) is discarded -- - procedure rewind (stream : FILEs); - - function setvbuf -@@ -191,11 +188,6 @@ package Interfaces.C_Streams is - size : size_t) - return int; - -- procedure tmpnam (string : chars); -- -- The parameter must be a pointer to a string buffer of at least L_tmpnam -- -- bytes (the call with a null parameter is not supported). The returned -- -- value, which is just a copy of the input argument, is discarded. -- - function tmpfile return FILEs; - - function ungetc (c : int; stream : FILEs) return int; -@@ -270,9 +262,7 @@ private - pragma Import (C, fseek); - pragma Import (C, ftell); - pragma Import (C, isatty); -- pragma Import (C, mktemp); - pragma Import (C, rewind); -- pragma Import (C, tmpnam); - pragma Import (C, tmpfile); - pragma Import (C, ungetc); - pragma Import (C, unlink); diff --git a/lang/gcc3-c++/Makefile b/lang/gcc3-c++/Makefile index 488dad7ac4b..ad08f67582a 100644 --- a/lang/gcc3-c++/Makefile +++ b/lang/gcc3-c++/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.10 2004/03/02 14:46:33 drochner Exp $ +# $NetBSD: Makefile,v 1.11 2004/04/10 15:47:09 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-c++-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - C++ compiler @@ -6,10 +6,12 @@ COMMENT= GNU Compiler Collection, v3 - C++ compiler INSTLIBS= libstdc++-v3/libsupc++/libsupc++.la \ libstdc++-v3/src/libstdc++.la -.include "../gcc3-c/language.mk" +.include "../../lang/gcc3/language.mk" CONFIGURE_ARGS+= --enable-languages="c++" +MAKE_ENV+= ALL_GCC_CXX=${ALL_GCC_CXX:Q} + do-build: cd ${WRKSRC}/gcc && ${SETENV} ${MAKE_ENV} ${GMAKE} c++ cd ${WRKSRC}/gcc && ${SETENV} ${MAKE_ENV} ${GMAKE} g++ diff --git a/lang/gcc3-c++/distinfo b/lang/gcc3-c++/distinfo deleted file mode 100644 index c5cdf31b715..00000000000 --- a/lang/gcc3-c++/distinfo +++ /dev/null @@ -1,7 +0,0 @@ -$NetBSD: distinfo,v 1.7 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-aa) = 93a4299e7d64b91f750ba96c75f0487cdf87abea -SHA1 (patch-af) = ee41c43dbb6e710a9399954793c6ff7c4274e515 -SHA1 (patch-ag) = 23fecd85ddca19a2c543827b60ea555ffbdcaa6c diff --git a/lang/gcc3-c++/patches/patch-aa b/lang/gcc3-c++/patches/patch-aa deleted file mode 100644 index 494baa09f5e..00000000000 --- a/lang/gcc3-c++/patches/patch-aa +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2003/07/08 15:05:00 drochner Exp $ - ---- Makefile.in.orig 2003-05-14 02:18:14.000000000 +0200 -+++ Makefile.in 2003-07-03 23:14:35.000000000 +0200 -@@ -1642,8 +1642,8 @@ - - install-dosrel-fake: - --ALL_GCC = all-gcc --ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss -+#ALL_GCC = all-gcc -+#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss - ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 - - # This is a list of inter-dependencies among modules. diff --git a/lang/gcc3-c++/patches/patch-af b/lang/gcc3-c++/patches/patch-af deleted file mode 100644 index 21ae69c85d7..00000000000 --- a/lang/gcc3-c++/patches/patch-af +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-af,v 1.1 2003/07/29 09:02:51 martin Exp $ - ---- gcc/cppspec.c Wed Jul 23 02:40:54 2003 -+++ gcc/cppspec.c Fri Jul 25 17:57:41 2003 -@@ -85,6 +85,13 @@ - - is_cpp_driver = 1; - -+ /* NetBSD uses __GNUC__ and friends in header files processed with cpp -+ regularly. Default to old behaviour here. XXX - move me to -+ config/netbsd.h "DEFAULT_CPP_NEED_NO_GCC". */ -+#ifdef DEFAULT_CPP_NEED_NO_GCC -+ need_no_gcc = DEFAULT_CPP_NEED_NO_GCC; -+#endif -+ - /* First pass. If we see an -S or -c, barf. If we see an input file, - turn off read_stdin. If we see a second input file, it is actually - the output file. If we see a third input file, barf. */ diff --git a/lang/gcc3-c++/patches/patch-ag b/lang/gcc3-c++/patches/patch-ag deleted file mode 100644 index 63979c02207..00000000000 --- a/lang/gcc3-c++/patches/patch-ag +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ag,v 1.1 2003/07/29 09:02:51 martin Exp $ - -Index: gcc/config/netbsd.h ---- gcc/config/netbsd.h Wed Jul 23 02:41:37 2003 -+++ gcc/config/netbsd.h Fri Jul 25 17:57:43 2003 -@@ -234,3 +234,7 @@ - /* 7 == PROT_READ | PROT_WRITE | PROT_EXEC */ \ - (void) mprotect (page, end - page, 7); \ - } -+ -+/* NetBSD depends on "cpp" having GNUC semantics, and must default as if -+ "cpp -gcc" was called. */ -+#define DEFAULT_CPP_NEED_NO_GCC 0 diff --git a/lang/gcc3-c/Makefile b/lang/gcc3-c/Makefile index 27cb559623b..bf8fae5f398 100644 --- a/lang/gcc3-c/Makefile +++ b/lang/gcc3-c/Makefile @@ -1,16 +1,20 @@ -# $NetBSD: Makefile,v 1.9 2004/02/18 13:33:41 jlam Exp $ +# $NetBSD: Makefile,v 1.10 2004/04/10 15:47:08 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-c-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - C compiler INFO_FILES= cpp.info gcc.info gccint.info cppinternals.info -.include "Makefile.common" +.include "../../lang/gcc3/Makefile.common" # The "gcc" frontend knows all languages (by patch) CONFIGURE_ARGS+= --enable-languages=c PLIST_SRC= ${WRKDIR}/PLIST_DYNAMIC +MAKE_ENV+= ALL_GCC=${ALL_GCC:Q} +MAKE_ENV+= ALL_GCC_C=${ALL_GCC_C:Q} +MAKE_ENV+= ALL_GCC_CCC=${ALL_GCCXX_C:Q} + .include "../../mk/compiler.mk" .if empty(CC_VERSION:Mgcc-*) diff --git a/lang/gcc3-c/Makefile.common b/lang/gcc3-c/Makefile.common deleted file mode 100644 index 2dc5f510613..00000000000 --- a/lang/gcc3-c/Makefile.common +++ /dev/null @@ -1,117 +0,0 @@ -# $NetBSD: Makefile.common,v 1.16 2004/03/25 23:34:01 jlam Exp $ - -GCC_VERSION= 3.3.3 -DISTNAME= gcc-${GCC_VERSION} -CATEGORIES= lang -MASTER_SITES= ${MASTER_SITE_GNU:=gcc/releases/gcc-${GCC_VERSION}/} -EXTRACT_SUFX= .tar.bz2 - -MAINTAINER= tech-pkg@NetBSD.org -HOMEPAGE= http://www.gnu.org/software/gcc/gcc.html - -NOT_FOR_PLATFORM= Darwin-*-* - -USE_BUILDLINK3= yes -USE_PKGINSTALL= yes -USE_GNU_TOOLS+= make -MAKEFLAGS+= GMAKE_LOCALE=no -HAS_CONFIGURE= yes - -.include "../../mk/bsd.prefs.mk" - -# Make location overridable, to allow ping-pong bootstraps. -GCC3_DEFAULT_SUBPREFIX= gcc3 -GCC3_INSTALLTO_SUBPREFIX?= ${GCC3_DEFAULT_SUBPREFIX} -.if ${GCC3_INSTALLTO_SUBPREFIX} != ${GCC3_DEFAULT_SUBPREFIX} -GCC3_PKGMODIF= _${GCC3_INSTALLTO_SUBPREFIX} -.endif - -GCC_SUBPREFIX= ${GCC3_INSTALLTO_SUBPREFIX} -GCC_PREFIX= ${PREFIX}/${GCC_SUBPREFIX} -CONFIGURE_ARGS+= --prefix=${GCC_PREFIX} -PLIST_SUBST+= GCC_SUBPREFIX=${GCC_SUBPREFIX} -FILES_SUBST+= GCC_PREFIX=${GCC_PREFIX} -FILES_SUBST+= PKGNAME=${PKGNAME} -MESSAGE_SUBST+= GCC_PREFIX=${GCC_PREFIX} - -.if defined(INFO_FILES) -INFO_DIR= ${GCC_SUBPREFIX}/info -.endif - -# Support threads and building of crt*.o on post-1.6 -current. -# Use buildlink to avoid a GNU pth package. -.if ${OPSYS} == "NetBSD" && exists(/usr/include/pthread.h) -GCC_PLATFORM= ${MACHINE_GNU_ARCH}--netbsdelf2.0 -PTHREAD_OPTS+= require native -. include "../../mk/pthread.buildlink3.mk" -.else -GCC_PLATFORM= ${MACHINE_GNU_PLATFORM} -.endif -CONFIGURE_ARGS+= --host=${GCC_PLATFORM} -PLIST_SUBST+= GCC_PLATFORM=${GCC_PLATFORM} - -.if ${OPSYS} == "NetBSD" -. if !defined(USE_BINUTILS) -AS_PATH:= ${AS} -. for _dir_ in ${PATH:C/\:/ /g} -. if empty(AS_PATH:M/*) -. if exists(${_dir_}/${AS}) -AS_PATH:= ${_dir_}/${AS} -. endif -. endif -. endfor -. if !empty(AS_PATH:M${LOCALBASE}/*) -USE_BINUTILS= YES -. else -AS_VERSION!= ${AS} --version | ${AWK} '{ \ - split($$3, v, /[.]/); \ - printf "%02d%02d%02d%02d\n",v[1],v[2],v[3],v[4]; \ - exit; \ - }' -USE_BINUTILS!= ${TEST} ${AS_VERSION} -lt 02130201 && ${ECHO} YES || ${ECHO} NO -. endif -MAKEFLAGS+= USE_BINUTILS=${USE_BINUTILS} -. endif -.endif - -.if defined(USE_BINUTILS) && !empty(USE_BINUTILS:M[yY][eE][sS]) -DEPENDS+= binutils>=2.13.2.1:../../devel/binutils -EVAL_PREFIX+= BINUTILS_PREFIX=binutils -BINUTILS_PREFIX_DEFAULT= ${LOCALBASE} -CONFIGURE_ARGS+= --with-as=${BINUTILS_PREFIX}/${MACHINE_GNU_PLATFORM}/bin/as -.endif - -.if ${OPSYS} == "NetBSD" || ${OPSYS} == "Linux" || ${OPSYS} == "SunOS" -CONFIGURE_ARGS+= --enable-shared -.else -CONFIGURE_ARGS+= --disable-shared -.endif - -GCC_ARCHSUBDIR= ${GCC_SUBPREFIX}/lib/gcc-lib/${GCC_PLATFORM}/${GCC_VERSION} -GCC_ARCHDIR= ${PREFIX}/${GCC_ARCHSUBDIR} - -.if defined(INSTLIBS) -BUILDLINK_LIBTOOL= ${BUILDLINK_DIR}/bin/libtool - -.PHONY: scrub-libtool-archives -post-build: scrub-libtool-archives -scrub-libtool-archives: -. for lafile in ${INSTLIBS} - ${BUILDLINK_LIBTOOL} --fix-la ${WRKSRC}/${GCC_PLATFORM}/${lafile} -. endfor -.endif - -# Create the directories for the build, patch the ltconfig script to -# always use "sunos" shared library numbering (for consistent PLISTs -# across platforms), and touch all the necessary files so that they're -# not regenerated after the configure script is run. -# -pre-configure: - ${MKDIR} ${BUILD_DIRS} - cd ${WRKSRC}; for file in ltconfig boehm-gc/ltconfig; do \ - ${MV} -f $$file $$file.bak; \ - ${SED} -e "s|\(version_type\)=linux|\1=sunos|g" \ - $$file.bak > $$file; \ - ${CHMOD} +x $$file; \ - done - cd ${WRKSRC} && contrib/gcc_update --touch diff --git a/lang/gcc3-c/distinfo b/lang/gcc3-c/distinfo deleted file mode 100644 index 5f615189e38..00000000000 --- a/lang/gcc3-c/distinfo +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: distinfo,v 1.7 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-ab) = f0795e3792cd5200140bc19e291a2616b7d31468 -SHA1 (patch-ae) = e5dd184ca1b0c415215e82d0250469792a432741 -SHA1 (patch-af) = ee41c43dbb6e710a9399954793c6ff7c4274e515 -SHA1 (patch-ag) = 23fecd85ddca19a2c543827b60ea555ffbdcaa6c -SHA1 (patch-ai) = bb9f4975769cd104b25b4609a1d4c888bb147bb1 diff --git a/lang/gcc3-c/language.mk b/lang/gcc3-c/language.mk deleted file mode 100644 index 9ef9afb17f5..00000000000 --- a/lang/gcc3-c/language.mk +++ /dev/null @@ -1,14 +0,0 @@ -# $NetBSD: language.mk,v 1.9 2004/03/22 08:26:44 jlam Exp $ - -BUILDLINK_DEPENDS.gcc3-c+= gcc3${GCC3_PKGMODIF}-c-${GCC_VERSION}{,nb*} -BUILDLINK_DEPMETHOD.gcc3-c+= full - -.include "../gcc3-c/Makefile.common" - -pre-build: - cd ${WRKSRC}/gcc && ${SETENV} ${MAKE_ENV} ${GMAKE} tconfig.h - ${RM} -f ${WRKSRC}/libiberty/libiberty.a ${WRKSRC}/gcc/xgcc - ${LN} -s ${GCC_PREFIX}/lib/libiberty.a ${WRKSRC}/libiberty - ${LN} -s ${GCC_PREFIX}/bin/gcc ${WRKSRC}/gcc/xgcc - -.include "../gcc3-c/buildlink3.mk" diff --git a/lang/gcc3-c/patches/patch-ab b/lang/gcc3-c/patches/patch-ab deleted file mode 100644 index 89478c11654..00000000000 --- a/lang/gcc3-c/patches/patch-ab +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-ab,v 1.3 2003/07/09 15:14:43 drochner Exp $ - ---- gcc/Makefile.in.orig Tue Jan 28 16:54:07 2003 -+++ gcc/Makefile.in Sat May 24 13:01:38 2003 -@@ -1236,6 +1236,7 @@ - # Language-independent files. - - DRIVER_DEFINES = \ -+ -DLINK_LIBGCC_SPEC="\"%D $(RPATH_FLAG)$(prefix)/lib\"" \ - -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \ - -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\" \ - -DDEFAULT_TARGET_VERSION=\"$(version)\" \ diff --git a/lang/gcc3-c/patches/patch-ae b/lang/gcc3-c/patches/patch-ae deleted file mode 100644 index f3ce9f9c54b..00000000000 --- a/lang/gcc3-c/patches/patch-ae +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: patch-ae,v 1.1 2003/07/06 12:15:08 drochner Exp $ - ---- gcc/config/t-netbsd.orig 2003-06-11 19:38:33.000000000 +0200 -+++ gcc/config/t-netbsd 2003-06-11 19:38:59.000000000 +0200 -@@ -3,3 +3,4 @@ - - # Always build crtstuff with PIC. - CRTSTUFF_T_CFLAGS = -fPIC -+TARGET_LIBGCC2_CFLAGS += -fPIC diff --git a/lang/gcc3-c/patches/patch-af b/lang/gcc3-c/patches/patch-af deleted file mode 100644 index 2c0dc8fa1c8..00000000000 --- a/lang/gcc3-c/patches/patch-af +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-af,v 1.1 2003/07/29 09:05:56 martin Exp $ - ---- gcc/cppspec.c Wed Jul 23 02:40:54 2003 -+++ gcc/cppspec.c Fri Jul 25 17:57:41 2003 -@@ -85,6 +85,13 @@ - - is_cpp_driver = 1; - -+ /* NetBSD uses __GNUC__ and friends in header files processed with cpp -+ regularly. Default to old behaviour here. XXX - move me to -+ config/netbsd.h "DEFAULT_CPP_NEED_NO_GCC". */ -+#ifdef DEFAULT_CPP_NEED_NO_GCC -+ need_no_gcc = DEFAULT_CPP_NEED_NO_GCC; -+#endif -+ - /* First pass. If we see an -S or -c, barf. If we see an input file, - turn off read_stdin. If we see a second input file, it is actually - the output file. If we see a third input file, barf. */ diff --git a/lang/gcc3-c/patches/patch-ag b/lang/gcc3-c/patches/patch-ag deleted file mode 100644 index 79946e0ebeb..00000000000 --- a/lang/gcc3-c/patches/patch-ag +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ag,v 1.1 2003/07/29 09:05:56 martin Exp $ - -Index: gcc/config/netbsd.h ---- gcc/config/netbsd.h Wed Jul 23 02:41:37 2003 -+++ gcc/config/netbsd.h Fri Jul 25 17:57:43 2003 -@@ -234,3 +234,7 @@ - /* 7 == PROT_READ | PROT_WRITE | PROT_EXEC */ \ - (void) mprotect (page, end - page, 7); \ - } -+ -+/* NetBSD depends on "cpp" having GNUC semantics, and must default as if -+ "cpp -gcc" was called. */ -+#define DEFAULT_CPP_NEED_NO_GCC 0 diff --git a/lang/gcc3-c/patches/patch-ai b/lang/gcc3-c/patches/patch-ai deleted file mode 100644 index d5dc6b3d2dd..00000000000 --- a/lang/gcc3-c/patches/patch-ai +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ai,v 1.1 2003/07/06 12:15:08 drochner Exp $ - ---- gcc/configure.orig 2003-07-04 12:51:47.000000000 +0200 -+++ gcc/configure 2003-07-04 12:52:44.000000000 +0200 -@@ -8559,7 +8559,7 @@ - lang_specs_files= - lang_options_files= - lang_tree_files= --for subdir in . $subdirs -+for subdir in . cp f java objc ada - do - if test -f $srcdir/$subdir/lang-specs.h; then - lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h" diff --git a/lang/gcc3-f77/Makefile b/lang/gcc3-f77/Makefile index 00d6e1c465f..32236ecb57d 100644 --- a/lang/gcc3-f77/Makefile +++ b/lang/gcc3-f77/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.9 2004/03/02 14:46:33 drochner Exp $ +# $NetBSD: Makefile,v 1.10 2004/04/10 15:47:09 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-f77-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - F77 compiler @@ -7,7 +7,7 @@ INFO_FILES= g77.info INSTLIBS= libf2c/libg2c.la -.include "../gcc3-c/language.mk" +.include "../../lang/gcc3/language.mk" CONFIGURE_ARGS+= --enable-languages="f77" diff --git a/lang/gcc3-f77/distinfo b/lang/gcc3-f77/distinfo deleted file mode 100644 index 9312faf09a4..00000000000 --- a/lang/gcc3-f77/distinfo +++ /dev/null @@ -1,5 +0,0 @@ -$NetBSD: distinfo,v 1.6 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-aa) = 541cd543720cccc24aa60b9ac26cfa6143e7e5d4 diff --git a/lang/gcc3-f77/patches/patch-aa b/lang/gcc3-f77/patches/patch-aa deleted file mode 100644 index 3c9ebafe63f..00000000000 --- a/lang/gcc3-f77/patches/patch-aa +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2003/07/08 15:05:01 drochner Exp $ - ---- Makefile.in.orig 2003-05-14 02:18:14.000000000 +0200 -+++ Makefile.in 2003-07-03 18:02:24.000000000 +0200 -@@ -1642,9 +1642,9 @@ - - install-dosrel-fake: - --ALL_GCC = all-gcc --ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss --ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 -+#ALL_GCC = all-gcc -+#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss -+#ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 - - # This is a list of inter-dependencies among modules. - all-ash: diff --git a/lang/gcc3-java/Makefile b/lang/gcc3-java/Makefile index 75c8ea37566..4a946001c35 100644 --- a/lang/gcc3-java/Makefile +++ b/lang/gcc3-java/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.13 2004/03/02 14:46:33 drochner Exp $ +# $NetBSD: Makefile,v 1.14 2004/04/10 15:47:09 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-java-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - Java compiler @@ -12,7 +12,7 @@ INSTLIBS= libjava/lib-org-w3c-dom.la \ libjava/lib-org-xml-sax.la \ libjava/libgcj.la -.include "../gcc3-c/language.mk" +.include "../../lang/gcc3/language.mk" CONFIGURE_ARGS+= --enable-languages="java" CONFIGURE_ARGS+= --with-system-zlib diff --git a/lang/gcc3-java/distinfo b/lang/gcc3-java/distinfo deleted file mode 100644 index dfbedce8b31..00000000000 --- a/lang/gcc3-java/distinfo +++ /dev/null @@ -1,5 +0,0 @@ -$NetBSD: distinfo,v 1.6 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-aa) = e79f24237d3ece987065b84987a95eb8abc7ded7 diff --git a/lang/gcc3-java/patches/patch-aa b/lang/gcc3-java/patches/patch-aa deleted file mode 100644 index 39130202937..00000000000 --- a/lang/gcc3-java/patches/patch-aa +++ /dev/null @@ -1,28 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2003/07/08 15:05:02 drochner Exp $ - ---- Makefile.in.orig 2003-05-14 02:18:14.000000000 +0200 -+++ Makefile.in 2003-07-03 19:41:59.000000000 +0200 -@@ -1642,9 +1642,9 @@ - - install-dosrel-fake: - --ALL_GCC = all-gcc --ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss --ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 -+#ALL_GCC = all-gcc -+#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss -+#ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 - - # This is a list of inter-dependencies among modules. - all-ash: -@@ -1694,8 +1694,8 @@ - all-build-libiberty: configure-build-libiberty - - configure-target-libffi: $(ALL_GCC_C) --configure-target-libjava: $(ALL_GCC_C) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi --all-target-libjava: all-fastjar all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi -+configure-target-libjava: $(ALL_GCC_C) configure-target-boehm-gc configure-target-qthreads configure-target-libffi -+all-target-libjava: all-fastjar all-target-boehm-gc all-target-qthreads all-target-libffi - configure-target-libstdc++-v3: $(ALL_GCC_C) - all-target-libstdc++-v3: all-target-libiberty - all-libtool: diff --git a/lang/gcc3-objc/Makefile b/lang/gcc3-objc/Makefile index 2f0b67fae77..9c61488ff66 100644 --- a/lang/gcc3-objc/Makefile +++ b/lang/gcc3-objc/Makefile @@ -1,11 +1,11 @@ -# $NetBSD: Makefile,v 1.9 2004/03/02 14:46:33 drochner Exp $ +# $NetBSD: Makefile,v 1.10 2004/04/10 15:47:09 seb Exp $ PKGNAME= gcc3${GCC3_PKGMODIF}-objc-${GCC_VERSION} COMMENT= GNU Compiler Collection, v3 - Objective C compiler INSTLIBS= libobjc/libobjc.la -.include "../gcc3-c/language.mk" +.include "../../lang/gcc3/language.mk" CONFIGURE_ARGS+= --enable-languages="objc" diff --git a/lang/gcc3-objc/distinfo b/lang/gcc3-objc/distinfo deleted file mode 100644 index 9312faf09a4..00000000000 --- a/lang/gcc3-objc/distinfo +++ /dev/null @@ -1,5 +0,0 @@ -$NetBSD: distinfo,v 1.6 2004/03/02 14:46:33 drochner Exp $ - -SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab -Size (gcc-3.3.3.tar.bz2) = 23279245 bytes -SHA1 (patch-aa) = 541cd543720cccc24aa60b9ac26cfa6143e7e5d4 diff --git a/lang/gcc3-objc/patches/patch-aa b/lang/gcc3-objc/patches/patch-aa deleted file mode 100644 index 7dd78346657..00000000000 --- a/lang/gcc3-objc/patches/patch-aa +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2003/07/08 15:05:03 drochner Exp $ - ---- Makefile.in.orig 2003-05-14 02:18:14.000000000 +0200 -+++ Makefile.in 2003-07-03 18:02:24.000000000 +0200 -@@ -1642,9 +1642,9 @@ - - install-dosrel-fake: - --ALL_GCC = all-gcc --ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss --ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 -+#ALL_GCC = all-gcc -+#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss -+#ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 - - # This is a list of inter-dependencies among modules. - all-ash: diff --git a/lang/gcc3/Makefile b/lang/gcc3/Makefile index cfbb1c7f0d6..b079c87ff39 100644 --- a/lang/gcc3/Makefile +++ b/lang/gcc3/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.53 2004/03/02 14:46:33 drochner Exp $ +# $NetBSD: Makefile,v 1.54 2004/04/10 15:47:08 seb Exp $ GCC_VERSION= 3.3.3 DISTNAME= gcc3-${GCC_VERSION} @@ -24,6 +24,7 @@ NO_BUILDLINK= yes NO_CONFIGURE= yes NO_BUILD= yes +do-patch: # empty do-install: # empty .include "../../mk/bsd.pkg.mk" diff --git a/lang/gcc3/Makefile.common b/lang/gcc3/Makefile.common new file mode 100644 index 00000000000..d1be08e4c49 --- /dev/null +++ b/lang/gcc3/Makefile.common @@ -0,0 +1,125 @@ +# $NetBSD: Makefile.common,v 1.1 2004/04/10 15:47:08 seb Exp $ + +GCC_VERSION= 3.3.3 +DISTNAME= gcc-${GCC_VERSION} +CATEGORIES= lang +MASTER_SITES= ${MASTER_SITE_GNU:=gcc/releases/gcc-${GCC_VERSION}/} +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= tech-pkg@NetBSD.org +HOMEPAGE= http://www.gnu.org/software/gcc/gcc.html + +NOT_FOR_PLATFORM= Darwin-*-* + +USE_BUILDLINK3= yes +USE_PKGINSTALL= yes +USE_GNU_TOOLS+= make +MAKEFLAGS+= GMAKE_LOCALE=no +HAS_CONFIGURE= yes + +PATCHDIR= ${.CURDIR}/../../lang/gcc3-c/patches +DISTINFO_FILE= ${.CURDIR}/../../lang/gcc3-c/distinfo + +.include "../../mk/bsd.prefs.mk" + +# Make location overridable, to allow ping-pong bootstraps. +GCC3_DEFAULT_SUBPREFIX= gcc3 +GCC3_INSTALLTO_SUBPREFIX?= ${GCC3_DEFAULT_SUBPREFIX} +.if ${GCC3_INSTALLTO_SUBPREFIX} != ${GCC3_DEFAULT_SUBPREFIX} +GCC3_PKGMODIF= _${GCC3_INSTALLTO_SUBPREFIX} +.endif + +GCC_SUBPREFIX= ${GCC3_INSTALLTO_SUBPREFIX} +GCC_PREFIX= ${PREFIX}/${GCC_SUBPREFIX} +CONFIGURE_ARGS+= --prefix=${GCC_PREFIX} +PLIST_SUBST+= GCC_SUBPREFIX=${GCC_SUBPREFIX} +FILES_SUBST+= GCC_PREFIX=${GCC_PREFIX} +FILES_SUBST+= PKGNAME=${PKGNAME} +MESSAGE_SUBST+= GCC_PREFIX=${GCC_PREFIX} + +.if defined(INFO_FILES) +INFO_DIR= ${GCC_SUBPREFIX}/info +.endif + +# These come from $WRKSRC/Makefile.in +ALL_GCC= all-gcc +ALL_GCC_C= $$(ALL_GCC) all-target-newlib all-target-libgloss +ALL_GCC_CXX= $$(ALL_GCC_C) all-target-libstdc++-v3 + +# Support threads and building of crt*.o on post-1.6 -current. +# Use buildlink to avoid a GNU pth package. +.if ${OPSYS} == "NetBSD" && exists(/usr/include/pthread.h) +GCC_PLATFORM= ${MACHINE_GNU_ARCH}--netbsdelf2.0 +PTHREAD_OPTS+= require native +. include "../../mk/pthread.buildlink3.mk" +.else +GCC_PLATFORM= ${MACHINE_GNU_PLATFORM} +.endif +CONFIGURE_ARGS+= --host=${GCC_PLATFORM} +PLIST_SUBST+= GCC_PLATFORM=${GCC_PLATFORM} + +.if ${OPSYS} == "NetBSD" +. if !defined(USE_BINUTILS) +AS_PATH:= ${AS} +. for _dir_ in ${PATH:C/\:/ /g} +. if empty(AS_PATH:M/*) +. if exists(${_dir_}/${AS}) +AS_PATH:= ${_dir_}/${AS} +. endif +. endif +. endfor +. if !empty(AS_PATH:M${LOCALBASE}/*) +USE_BINUTILS= YES +. else +AS_VERSION!= ${AS} --version | ${AWK} '{ \ + split($$3, v, /[.]/); \ + printf "%02d%02d%02d%02d\n",v[1],v[2],v[3],v[4]; \ + exit; \ + }' +USE_BINUTILS!= ${TEST} ${AS_VERSION} -lt 02130201 && ${ECHO} YES || ${ECHO} NO +. endif +MAKEFLAGS+= USE_BINUTILS=${USE_BINUTILS} +. endif +.endif + +.if defined(USE_BINUTILS) && !empty(USE_BINUTILS:M[yY][eE][sS]) +DEPENDS+= binutils>=2.13.2.1:../../devel/binutils +EVAL_PREFIX+= BINUTILS_PREFIX=binutils +BINUTILS_PREFIX_DEFAULT= ${LOCALBASE} +CONFIGURE_ARGS+= --with-as=${BINUTILS_PREFIX}/${MACHINE_GNU_PLATFORM}/bin/as +.endif + +.if ${OPSYS} == "NetBSD" || ${OPSYS} == "Linux" || ${OPSYS} == "SunOS" +CONFIGURE_ARGS+= --enable-shared +.else +CONFIGURE_ARGS+= --disable-shared +.endif + +GCC_ARCHSUBDIR= ${GCC_SUBPREFIX}/lib/gcc-lib/${GCC_PLATFORM}/${GCC_VERSION} +GCC_ARCHDIR= ${PREFIX}/${GCC_ARCHSUBDIR} + +.if defined(INSTLIBS) +BUILDLINK_LIBTOOL= ${BUILDLINK_DIR}/bin/libtool + +.PHONY: scrub-libtool-archives +post-build: scrub-libtool-archives +scrub-libtool-archives: +. for lafile in ${INSTLIBS} + ${BUILDLINK_LIBTOOL} --fix-la ${WRKSRC}/${GCC_PLATFORM}/${lafile} +. endfor +.endif + +# Create the directories for the build, patch the ltconfig script to +# always use "sunos" shared library numbering (for consistent PLISTs +# across platforms), and touch all the necessary files so that they're +# not regenerated after the configure script is run. +# +pre-configure: + ${MKDIR} ${BUILD_DIRS} + cd ${WRKSRC}; for file in ltconfig boehm-gc/ltconfig; do \ + ${MV} -f $$file $$file.bak; \ + ${SED} -e "s|\(version_type\)=linux|\1=sunos|g" \ + $$file.bak > $$file; \ + ${CHMOD} +x $$file; \ + done + cd ${WRKSRC} && contrib/gcc_update --touch diff --git a/lang/gcc3/distinfo b/lang/gcc3/distinfo new file mode 100644 index 00000000000..e01c598b9e6 --- /dev/null +++ b/lang/gcc3/distinfo @@ -0,0 +1,15 @@ +$NetBSD: distinfo,v 1.14 2004/04/10 15:47:08 seb Exp $ + +SHA1 (gcc-3.3.3.tar.bz2) = a9efbc34c5dd7fc48f7d700461de4fc014968cab +Size (gcc-3.3.3.tar.bz2) = 23279245 bytes +SHA1 (patch-aa) = 2b8d1fcbe1f8028a6a011e85bb3ef9c1a9373b36 +SHA1 (patch-ab) = f0795e3792cd5200140bc19e291a2616b7d31468 +SHA1 (patch-ae) = e5dd184ca1b0c415215e82d0250469792a432741 +SHA1 (patch-af) = ee41c43dbb6e710a9399954793c6ff7c4274e515 +SHA1 (patch-ag) = 23fecd85ddca19a2c543827b60ea555ffbdcaa6c +SHA1 (patch-ai) = bb9f4975769cd104b25b4609a1d4c888bb147bb1 +SHA1 (patch-aj) = 80fead3fdfba3f93a89a7294b45f9633454d35fb +SHA1 (patch-ak) = 9df2be9ed9f92218efce073ed0a727c0311630d0 +SHA1 (patch-al) = 6294061358e2b618a980e77cbf7bad6231feacbe +SHA1 (patch-am) = 8eff72d76b135a9b0318de651341cb08976758b5 +SHA1 (patch-an) = c0795339102b4608a3813c3a2d488c71ea972d6f diff --git a/lang/gcc3/language.mk b/lang/gcc3/language.mk new file mode 100644 index 00000000000..1a124272fff --- /dev/null +++ b/lang/gcc3/language.mk @@ -0,0 +1,14 @@ +# $NetBSD: language.mk,v 1.1 2004/04/10 15:47:08 seb Exp $ + +BUILDLINK_DEPENDS.gcc3-c+= gcc3${GCC3_PKGMODIF}-c-${GCC_VERSION}{,nb*} +BUILDLINK_DEPMETHOD.gcc3-c+= full + +.include "../../lang/gcc3/Makefile.common" + +pre-build: + cd ${WRKSRC}/gcc && ${SETENV} ${MAKE_ENV} ${GMAKE} tconfig.h + ${RM} -f ${WRKSRC}/libiberty/libiberty.a ${WRKSRC}/gcc/xgcc + ${LN} -s ${GCC_PREFIX}/lib/libiberty.a ${WRKSRC}/libiberty + ${LN} -s ${GCC_PREFIX}/bin/gcc ${WRKSRC}/gcc/xgcc + +.include "../../lang/gcc3-c/buildlink3.mk" diff --git a/lang/gcc3/patches/patch-aa b/lang/gcc3/patches/patch-aa new file mode 100644 index 00000000000..ea5d0200a7d --- /dev/null +++ b/lang/gcc3/patches/patch-aa @@ -0,0 +1,28 @@ +$NetBSD: patch-aa,v 1.6 2004/04/10 15:47:08 seb Exp $ + +--- Makefile.in.orig 2003-07-05 02:37:08.000000000 +0000 ++++ Makefile.in +@@ -1644,9 +1644,9 @@ install-dosrel: installdirs info + + install-dosrel-fake: + +-ALL_GCC = all-gcc +-ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss +-ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 ++#ALL_GCC = all-gcc ++#ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss ++#ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3 + + # This is a list of inter-dependencies among modules. + all-ash: +@@ -1696,8 +1696,8 @@ all-libiberty: + all-build-libiberty: configure-build-libiberty + + configure-target-libffi: $(ALL_GCC_C) +-configure-target-libjava: $(ALL_GCC_C) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi +-all-target-libjava: all-fastjar all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi ++configure-target-libjava: $(ALL_GCC_C) configure-target-boehm-gc configure-target-qthreads configure-target-libffi ++all-target-libjava: all-fastjar all-target-boehm-gc all-target-qthreads all-target-libffi + configure-target-libstdc++-v3: $(ALL_GCC_C) + all-target-libstdc++-v3: all-target-libiberty + all-libtool: diff --git a/lang/gcc3/patches/patch-ab b/lang/gcc3/patches/patch-ab new file mode 100644 index 00000000000..e6b7c3f8deb --- /dev/null +++ b/lang/gcc3/patches/patch-ab @@ -0,0 +1,12 @@ +$NetBSD: patch-ab,v 1.5 2004/04/10 15:47:08 seb Exp $ + +--- gcc/Makefile.in.orig Tue Jan 28 16:54:07 2003 ++++ gcc/Makefile.in Sat May 24 13:01:38 2003 +@@ -1236,6 +1236,7 @@ + # Language-independent files. + + DRIVER_DEFINES = \ ++ -DLINK_LIBGCC_SPEC="\"%D $(RPATH_FLAG)$(prefix)/lib\"" \ + -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \ + -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\" \ + -DDEFAULT_TARGET_VERSION=\"$(version)\" \ diff --git a/lang/gcc3/patches/patch-ae b/lang/gcc3/patches/patch-ae new file mode 100644 index 00000000000..bcea5030614 --- /dev/null +++ b/lang/gcc3/patches/patch-ae @@ -0,0 +1,9 @@ +$NetBSD: patch-ae,v 1.3 2004/04/10 15:47:08 seb Exp $ + +--- gcc/config/t-netbsd.orig 2003-06-11 19:38:33.000000000 +0200 ++++ gcc/config/t-netbsd 2003-06-11 19:38:59.000000000 +0200 +@@ -3,3 +3,4 @@ + + # Always build crtstuff with PIC. + CRTSTUFF_T_CFLAGS = -fPIC ++TARGET_LIBGCC2_CFLAGS += -fPIC diff --git a/lang/gcc3/patches/patch-af b/lang/gcc3/patches/patch-af new file mode 100644 index 00000000000..e98783c4a8a --- /dev/null +++ b/lang/gcc3/patches/patch-af @@ -0,0 +1,18 @@ +$NetBSD: patch-af,v 1.3 2004/04/10 15:47:08 seb Exp $ + +--- gcc/cppspec.c Wed Jul 23 02:40:54 2003 ++++ gcc/cppspec.c Fri Jul 25 17:57:41 2003 +@@ -85,6 +85,13 @@ + + is_cpp_driver = 1; + ++ /* NetBSD uses __GNUC__ and friends in header files processed with cpp ++ regularly. Default to old behaviour here. XXX - move me to ++ config/netbsd.h "DEFAULT_CPP_NEED_NO_GCC". */ ++#ifdef DEFAULT_CPP_NEED_NO_GCC ++ need_no_gcc = DEFAULT_CPP_NEED_NO_GCC; ++#endif ++ + /* First pass. If we see an -S or -c, barf. If we see an input file, + turn off read_stdin. If we see a second input file, it is actually + the output file. If we see a third input file, barf. */ diff --git a/lang/gcc3/patches/patch-ag b/lang/gcc3/patches/patch-ag new file mode 100644 index 00000000000..6bdbad6ff64 --- /dev/null +++ b/lang/gcc3/patches/patch-ag @@ -0,0 +1,13 @@ +$NetBSD: patch-ag,v 1.3 2004/04/10 15:47:08 seb Exp $ + +Index: gcc/config/netbsd.h +--- gcc/config/netbsd.h Wed Jul 23 02:41:37 2003 ++++ gcc/config/netbsd.h Fri Jul 25 17:57:43 2003 +@@ -234,3 +234,7 @@ + /* 7 == PROT_READ | PROT_WRITE | PROT_EXEC */ \ + (void) mprotect (page, end - page, 7); \ + } ++ ++/* NetBSD depends on "cpp" having GNUC semantics, and must default as if ++ "cpp -gcc" was called. */ ++#define DEFAULT_CPP_NEED_NO_GCC 0 diff --git a/lang/gcc3/patches/patch-ai b/lang/gcc3/patches/patch-ai new file mode 100644 index 00000000000..5bc9763d00e --- /dev/null +++ b/lang/gcc3/patches/patch-ai @@ -0,0 +1,13 @@ +$NetBSD: patch-ai,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/configure.orig 2003-07-04 12:51:47.000000000 +0200 ++++ gcc/configure 2003-07-04 12:52:44.000000000 +0200 +@@ -8559,7 +8559,7 @@ + lang_specs_files= + lang_options_files= + lang_tree_files= +-for subdir in . $subdirs ++for subdir in . cp f java objc ada + do + if test -f $srcdir/$subdir/lang-specs.h; then + lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h" diff --git a/lang/gcc3/patches/patch-aj b/lang/gcc3/patches/patch-aj new file mode 100644 index 00000000000..a186a5488e9 --- /dev/null +++ b/lang/gcc3/patches/patch-aj @@ -0,0 +1,13 @@ +$NetBSD: patch-aj,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/ada/Make-lang.in.orig 2003-07-06 11:48:22.000000000 +0200 ++++ gcc/ada/Make-lang.in 2003-07-06 11:48:44.000000000 +0200 +@@ -210,7 +210,7 @@ + $(LIBIBERTY) $(LIBS) $(SYSLIBS) + + # use target-gcc target-gnatmake target-gnatbind target-gnatlink +-gnattools: $(GCC_PARTS) $(CONFIG_H) prefix.o force ++gnattools: $(CONFIG_H) prefix.o force + $(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \ + ADA_INCLUDES="-I- -I../rts"\ + CC="../../xgcc -B../../" STAGE_PREFIX=../../ gnattools1 diff --git a/lang/gcc3/patches/patch-ak b/lang/gcc3/patches/patch-ak new file mode 100644 index 00000000000..0242f0ad2f1 --- /dev/null +++ b/lang/gcc3/patches/patch-ak @@ -0,0 +1,44 @@ +$NetBSD: patch-ak,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/ada/Makefile.in.orig 2003-07-04 13:53:53.000000000 -0600 ++++ gcc/ada/Makefile.in +@@ -1028,6 +1028,30 @@ ifeq ($(strip $(filter-out cygwin32% min + EXTRA_GNATRTL_NONTASKING_OBJS = g-regist.o + endif + ++ifeq ($(strip $(filter-out %86 netbsdelf%,$(arch) $(osys))),) ++ LIBGNAT_TARGET_PAIRS = \ ++ a-numaux.adb<86numaux.adb \ ++ a-numaux.ads<86numaux.ads \ ++ a-intnam.ads<4netbsdintnam.ads \ ++ s-inmaop.adb<7sinmaop.adb \ ++ s-intman.adb<5netbsdintman.adb \ ++ s-mastop.adb<5omastop.adb \ ++ s-osinte.adb<5netbsdosinte.adb \ ++ s-osinte.ads<5netbsdosinte.ads \ ++ s-osprim.adb<5posprim.adb \ ++ s-parame.adb<5netbsdparame.adb \ ++ s-taprop.adb<5netbsdtaprop.adb \ ++ s-tasinf.ads<5ftasinf.ads \ ++ s-taspri.ads<7staspri.ads \ ++ s-tpopse.adb<5netbsdtpopse.adb \ ++ s-tpopsp.adb<7netbsdtpopsp.adb \ ++ system.ads<5netbsdsystem.ads ++ ++ THREADSLIB=-pthread ++ EXTRA_GNATRTL_TASKING_OBJS=adasignal.o ada_lwp_self.o ++ ++endif ++ + # The runtime library for gnat comprises two directories. One contains the + # Ada source files that the compiler (gnat1) needs -- these files are listed + # by ADA_INCLUDE_SRCS -- and the other contains the object files and their +@@ -1609,7 +1633,7 @@ gnattools2: ../stamp-tools + TOOLSCASE=native \ + ../../gnatchop$(exeext) ../../gnat$(exeext) ../../gnatkr$(exeext) \ + ../../gnatls$(exeext) ../../gnatprep$(exeext) \ +- ../../gnatpsta$(exeext) ../../gnatxref$(exeext) \ ++ ../../gnatxref$(exeext) \ + ../../gnatfind$(exeext) ../../gnatname$(exeext) + + # These tools are only built for the native version. diff --git a/lang/gcc3/patches/patch-al b/lang/gcc3/patches/patch-al new file mode 100644 index 00000000000..f4e90c12bd3 --- /dev/null +++ b/lang/gcc3/patches/patch-al @@ -0,0 +1,13 @@ +$NetBSD: patch-al,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/ada/cstreams.c.orig 2003-12-01 15:24:51.000000000 -0700 ++++ gcc/ada/cstreams.c +@@ -180,7 +180,7 @@ __gnat_full_name (nam, buffer) + #elif defined (MSDOS) + _fixpath (nam, buffer); + +-#elif defined (sgi) ++#elif defined (sgi) || defined (__NetBSD__) + + /* Use realpath function which resolves links and references to .. and .. + on those Unix systems that support it. Note that GNU/Linux provides it but diff --git a/lang/gcc3/patches/patch-am b/lang/gcc3/patches/patch-am new file mode 100644 index 00000000000..585492e86cd --- /dev/null +++ b/lang/gcc3/patches/patch-am @@ -0,0 +1,22 @@ +$NetBSD: patch-am,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/ada/adaint.c.orig 2002-11-18 07:39:46.000000000 -0700 ++++ gcc/ada/adaint.c +@@ -636,6 +636,8 @@ __gnat_open_new_temp (path, fmode) + return mkstemp (path); + #elif defined (__Lynx__) + mktemp (path); ++#elif defined(__NetBSD__) ++ return mkstemp (path); + #else + if (mktemp (path) == NULL) + return -1; +@@ -703,7 +705,7 @@ __gnat_tmp_name (tmp_filename) + free (pname); + } + +-#elif defined (linux) ++#elif defined (linux) || defined (__NetBSD__) + char *tmpdir = getenv ("TMPDIR"); + + if (tmpdir == NULL) diff --git a/lang/gcc3/patches/patch-an b/lang/gcc3/patches/patch-an new file mode 100644 index 00000000000..bc0162011ac --- /dev/null +++ b/lang/gcc3/patches/patch-an @@ -0,0 +1,36 @@ +$NetBSD: patch-an,v 1.1 2004/04/10 15:47:08 seb Exp $ + +--- gcc/ada/i-cstrea.ads.orig 2002-10-23 01:33:26.000000000 -0600 ++++ gcc/ada/i-cstrea.ads +@@ -179,9 +179,6 @@ package Interfaces.C_Streams is + + function isatty (handle : int) return int; + +- procedure mktemp (template : chars); +- -- The return value (which is just a pointer to template) is discarded +- + procedure rewind (stream : FILEs); + + function setvbuf +@@ -191,11 +188,6 @@ package Interfaces.C_Streams is + size : size_t) + return int; + +- procedure tmpnam (string : chars); +- -- The parameter must be a pointer to a string buffer of at least L_tmpnam +- -- bytes (the call with a null parameter is not supported). The returned +- -- value, which is just a copy of the input argument, is discarded. +- + function tmpfile return FILEs; + + function ungetc (c : int; stream : FILEs) return int; +@@ -270,9 +262,7 @@ private + pragma Import (C, fseek); + pragma Import (C, ftell); + pragma Import (C, isatty); +- pragma Import (C, mktemp); + pragma Import (C, rewind); +- pragma Import (C, tmpnam); + pragma Import (C, tmpfile); + pragma Import (C, ungetc); + pragma Import (C, unlink); -- cgit v1.2.3