diff options
author | joerg <joerg@pkgsrc.org> | 2018-07-17 21:38:39 +0000 |
---|---|---|
committer | joerg <joerg@pkgsrc.org> | 2018-07-17 21:38:39 +0000 |
commit | 882b4e1f7575b062c0668a49701aa36279029464 (patch) | |
tree | 6808e0edd3b75df2e6f6397214ce0c56721201bd /lang/g95 | |
parent | b00d43776348e713edc4856151482357ee1f345f (diff) | |
download | pkgsrc-882b4e1f7575b062c0668a49701aa36279029464.tar.gz |
Be a good citizen and try using the libgcc from the C compiler. Don't
install a custom libgcc, it creates more problems than it solves
depending on the rpath order. Bump revision.
Diffstat (limited to 'lang/g95')
-rw-r--r-- | lang/g95/Makefile | 8 | ||||
-rw-r--r-- | lang/g95/PLIST | 6 | ||||
-rw-r--r-- | lang/g95/PLIST.Darwin | 4 | ||||
-rw-r--r-- | lang/g95/distinfo | 5 | ||||
-rw-r--r-- | lang/g95/patches/patch-ab | 41 | ||||
-rw-r--r-- | lang/g95/patches/patch-gcc_gcc.c | 23 |
6 files changed, 64 insertions, 23 deletions
diff --git a/lang/g95/Makefile b/lang/g95/Makefile index 53141754212..5a354dcba36 100644 --- a/lang/g95/Makefile +++ b/lang/g95/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.29 2017/10/18 09:38:23 maya Exp $ +# $NetBSD: Makefile,v 1.30 2018/07/17 21:38:39 joerg Exp $ DISTNAME= g95_source PKGNAME= g95-0.93 -PKGREVISION= 9 +PKGREVISION= 10 CATEGORIES= lang MASTER_SITES= http://ftp.g95.org/v${PKGVERSION_NOREV}/ EXTRACT_SUFX= .tgz @@ -53,11 +53,15 @@ GCC_CONFIGURE_ARGS+= --with-gnu-as --with-as=/usr/sfw/bin/gas . endif .endif +LIBGCC_SPEC= ${CC} -dumpspecs 2> /dev/null | grep -A 1 '^\*libgcc:$$' | tail -1 + post-extract: ${MKDIR} ${GCC_G95_DIR} cd ${WRKSRC} && ${GTAR} -xzf libf95.a-${PKGVERSION_NOREV}.tar.gz pre-configure: + mv ${GCC_DIR}/gcc/gcc.c ${GCC_DIR}/gcc/gcc.c.patched + sed "s|%LIBGCC_SPEC%|\"${LIBGCC_SPEC:sh:Q}\"|" ${GCC_DIR}/gcc/gcc.c.patched > ${GCC_DIR}/gcc/gcc.c cd ${WRKSRC}/libf95.a-${PKGVERSION_NOREV} && autoreconf -i rm -f ${GCC_DIR}/config.sub ${GCC_DIR}/config.guess ln -fs ${PKGSRCDIR}/mk/gnu-config/config.sub ${GCC_DIR}/config.sub diff --git a/lang/g95/PLIST b/lang/g95/PLIST index 98dcd390e76..d73df697551 100644 --- a/lang/g95/PLIST +++ b/lang/g95/PLIST @@ -1,13 +1,9 @@ -@comment $NetBSD: PLIST,v 1.5 2013/09/20 23:06:07 joerg Exp $ +@comment $NetBSD: PLIST,v 1.6 2018/07/17 21:38:39 joerg Exp $ bin/f95 bin/g95 bin/${MACHINE_GNU_PLATFORM}-g95 lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/cc1 lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/f951 -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc_eh.a -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc_s.so -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc_s.so.1 -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc.a lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libf95.la share/doc/g95/G95Manual.pdf share/doc/g95/INSTALL diff --git a/lang/g95/PLIST.Darwin b/lang/g95/PLIST.Darwin index 96f37e4f4d9..ea7cf4365c9 100644 --- a/lang/g95/PLIST.Darwin +++ b/lang/g95/PLIST.Darwin @@ -1,4 +1,2 @@ -@comment $NetBSD: PLIST.Darwin,v 1.1 2013/06/01 14:44:01 tron Exp $ +@comment $NetBSD: PLIST.Darwin,v 1.2 2018/07/17 21:38:39 joerg Exp $ lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/crt2.o -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc_s.10.4.dylib -lib/gcc-lib/${MACHINE_GNU_PLATFORM}/4.1.2/libgcc_s.10.5.dylib diff --git a/lang/g95/distinfo b/lang/g95/distinfo index 2ac067386a2..78d20c6a43d 100644 --- a/lang/g95/distinfo +++ b/lang/g95/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.32 2017/10/27 20:57:16 khorben Exp $ +$NetBSD: distinfo,v 1.33 2018/07/17 21:38:39 joerg Exp $ SHA1 (g95_source.tgz) = b5e503fd6459b65cbda73190685f9490230d9cff RMD160 (g95_source.tgz) = 98d03e9a1835f4b3553a72a798bdf1d90a757176 @@ -8,7 +8,7 @@ SHA1 (gcc-core-4.1.2.tar.bz2) = d6875295f6df1bec4a6f4ab8f0da54bfb8d97306 RMD160 (gcc-core-4.1.2.tar.bz2) = 612cbd5b795f7095fb3f565e6a8eaaee82c472c5 SHA512 (gcc-core-4.1.2.tar.bz2) = 002a2025f809781e8d427c00dfe884429ae094ad417edc3393f5bae249ae6049ea0c27e43caf51f9f15525bd35e24ad2c993c57f191b9196fdb68fd20e503f6e Size (gcc-core-4.1.2.tar.bz2) = 17485561 bytes -SHA1 (patch-ab) = a8ec156302d30374b05d520bfe0141ab9d97e1ef +SHA1 (patch-ab) = 254dd8c3402c07bb4919c73d72712839f348824e SHA1 (patch-configure) = 48450808201d4ea5ddb993627c4efeaf43d53bd2 SHA1 (patch-g95spec.c) = d6f434e715835cd39511c45ed18632c8401b78a2 SHA1 (patch-gcc_Makefile.in) = cc5cc142a85612ebf2d38513e4b05db0ae795268 @@ -22,6 +22,7 @@ SHA1 (patch-gcc_config_mips_netbsd.h) = 8888ecaa470e38a82ec56e332658fd32c9e5e86c SHA1 (patch-gcc_config_rs600_netbsd.h) = 2e568e48f84024b7182762107c4ee76ee87fe43c SHA1 (patch-gcc_config_t-dragonfly) = dd8d5919af737dfb9e3c18be9a41b4e2c6f31155 SHA1 (patch-gcc_config_t-dragonfly-thread) = ebdb58dacf0dc5d0bf2f1f1707a7c6ab29ee308c +SHA1 (patch-gcc_gcc.c) = 035bfdacd9fbe9b2775df74601a70aa249163975 SHA1 (patch-gcc_ginclude_stddef.h) = db0fade3d40f2354b1dd418c25e7254dc97e5bcf SHA1 (patch-gcc_toplev.h) = 6a51de1296e3a4711ce8fd37b1c95fe68b1e2c4e SHA1 (patch-libf95.a-0.92_io_atof.c) = 0c3a209815be3a97d984cb9a15ee888f93110d1d diff --git a/lang/g95/patches/patch-ab b/lang/g95/patches/patch-ab index 41e31a5da5b..7f107cea89a 100644 --- a/lang/g95/patches/patch-ab +++ b/lang/g95/patches/patch-ab @@ -1,4 +1,4 @@ -$NetBSD: patch-ab,v 1.9 2017/10/27 20:57:16 khorben Exp $ +$NetBSD: patch-ab,v 1.10 2018/07/17 21:38:39 joerg Exp $ Use $(host_alias) as the program prefix so it matches ${MACHINE_GNU_PLATFORM} @@ -14,7 +14,16 @@ Pass down correct path for libf95 to g95specs.c. VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -@@ -1418,7 +1419,7 @@ clean-local: +@@ -319,7 +320,7 @@ top_srcdir = @top_srcdir@ + @GCC_TRUE@ @GCC_DIR@/g95/gcc/intl.o @GCC_DIR@/g95/libiberty/libiberty.a \ + @GCC_TRUE@ @LDADD0@ + +-@GCC_TRUE@g95_DATA = @PARTS@ @GCC_DIR@/g95/gcc/libgcc.a ++@GCC_TRUE@g95_DATA = @PARTS@ + @GCC_TRUE@g95dir = @DEST_LIBDIR@ + EXTRA_DIST = MANIFEST CONTRIB BUGS lang.opt autogen.sh G95Manual.pdf COPYING \ + ggc-page40.c ggc-page41.c +@@ -1418,35 +1419,17 @@ clean-local: rm -f options.tmp options.c options.h version.c install-exec-hook: @@ -23,20 +32,30 @@ Pass down correct path for libf95 to g95specs.c. install-data-hook: -ln -sf f951$(EXEEXT) $(DESTDIR)@DEST_LIBDIR@/cc1 -@@ -1429,8 +1430,9 @@ install-data-hook: - ranlib $(DESTDIR)@DEST_LIBDIR@/libgcc_eh.a ; \ - ranlib $(DESTDIR)@DEST_LIBDIR@/libgcc.a ; \ - fi +- if test "`uname`" = "Darwin" ; then \ +- ar x /usr/lib/libgcc.a darwin-fpsave.o ; \ +- ar rs $(DESTDIR)@DEST_LIBDIR@/libgcc.a darwin-fpsave.o ; \ +- rm ./darwin-fpsave.o ; \ +- ranlib $(DESTDIR)@DEST_LIBDIR@/libgcc_eh.a ; \ +- ranlib $(DESTDIR)@DEST_LIBDIR@/libgcc.a ; \ +- fi - cp INSTALL $(DESTDIR)@DEST_LIBDIR@/../../../.. - cp G95Manual.pdf $(DESTDIR)@DEST_LIBDIR@/../../../.. +- if test -n "`ls @GCC_DIR@/g95/gcc/libgcc_s.*`" ; then \ +- (cd @GCC_DIR@/g95/gcc; tar cf - libgcc_s.*) | \ +- (cd $(DESTDIR)@DEST_LIBDIR@; tar xf -) ; \ +- fi +- if test -n "`ls @GCC_DIR@/g95/gcc/libunwind.*`" ; then \ +- (cd @GCC_DIR@/g95/gcc; tar cf - libunwind.*) | \ +- (cd $(DESTDIR)@DEST_LIBDIR@; tar xf -) ; \ +- fi +- if test -n "`ls @GCC_DIR@/g95/gcc/libgcc_eh.*`" ; then \ +- (cd @GCC_DIR@/g95/gcc; tar cf - libgcc_eh.*) | \ +- (cd $(DESTDIR)@DEST_LIBDIR@; tar xf -) ; \ +- fi + test -z "$(docdir)" || $(MKDIR_P) "$(DESTDIR)$(docdir)" + $(INSTALL_DATA) INSTALL $(DESTDIR)$(docdir) + $(INSTALL_DATA) G95Manual.pdf $(DESTDIR)$(docdir) - if test -n "`ls @GCC_DIR@/g95/gcc/libgcc_s.*`" ; then \ - (cd @GCC_DIR@/g95/gcc; tar cf - libgcc_s.*) | \ - (cd $(DESTDIR)@DEST_LIBDIR@; tar xf -) ; \ -@@ -1445,8 +1447,8 @@ install-data-hook: - fi ggc-page.o: $(srcdir)/ggc-page40.c $(srcdir)/ggc-page41.c -@GCC41_TRUE@ $(CC) -c -g -o ggc-page.o -I. $(CPPFLAGS) -DIN_GCC $(srcdir)/ggc-page41.c diff --git a/lang/g95/patches/patch-gcc_gcc.c b/lang/g95/patches/patch-gcc_gcc.c new file mode 100644 index 00000000000..d9965a0defe --- /dev/null +++ b/lang/g95/patches/patch-gcc_gcc.c @@ -0,0 +1,23 @@ +$NetBSD: patch-gcc_gcc.c,v 1.1 2018/07/17 21:38:39 joerg Exp $ + +--- ../gcc-4.1.2/gcc/gcc.c.orig 2018-07-17 15:30:56.297612662 +0000 ++++ ../gcc-4.1.2/gcc/gcc.c +@@ -607,16 +607,8 @@ proper position among the other output f + + /* config.h can define LIBGCC_SPEC to override how and when libgcc.a is + included. */ +-#ifndef LIBGCC_SPEC +-#if defined(REAL_LIBGCC_SPEC) +-#define LIBGCC_SPEC REAL_LIBGCC_SPEC +-#elif defined(LINK_LIBGCC_SPECIAL_1) +-/* Have gcc do the search for libgcc.a. */ +-#define LIBGCC_SPEC "libgcc.a%s" +-#else +-#define LIBGCC_SPEC "-lgcc" +-#endif +-#endif ++#undef LIBGCC_SPEC ++#define LIBGCC_SPEC %LIBGCC_SPEC% + + /* config.h can define STARTFILE_SPEC to override the default crt0 files. */ + #ifndef STARTFILE_SPEC |