[100759] trunk/dports/lang/g95
takeshi at macports.org
takeshi at macports.org
Sat Dec 22 23:22:52 PST 2012
Revision: 100759
https://trac.macports.org/changeset/100759
Author: takeshi at macports.org
Date: 2012-12-22 23:22:52 -0800 (Sat, 22 Dec 2012)
Log Message:
-----------
g95: revamped for 0.93.
* Removed gcc40.
* Use dist_subdir to deal with unversioned distfiles rather than sharing gcc42.
This change was made to avoid downloading an older g95 distfile from MacPorts mirror.
Modified Paths:
--------------
trunk/dports/lang/g95/Portfile
trunk/dports/lang/g95/files/patch-Makefile.in.diff
Removed Paths:
-------------
trunk/dports/lang/g95/files/patch-darwin-fallback.c.diff
trunk/dports/lang/g95/files/patch-host-darwin.c.diff
Modified: trunk/dports/lang/g95/Portfile
===================================================================
--- trunk/dports/lang/g95/Portfile 2012-12-23 05:31:45 UTC (rev 100758)
+++ trunk/dports/lang/g95/Portfile 2012-12-23 07:22:52 UTC (rev 100759)
@@ -4,8 +4,7 @@
PortSystem 1.0
name g95
-version 0.92
-revision 2
+version 0.93
platforms darwin
categories lang
license GPL-2
@@ -17,30 +16,15 @@
Innovations and optimizations continue to be worked on. \
Parts of the F2003 standard have been implemented in g95.
homepage http://g95.org/
-master_sites ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.0.4/:gcc \
+master_sites ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.2.4/:gcc \
http://ftp.g95.org/v${version}/:g95
+dist_subdir ${name}/${version}
-if {(${os.platform} == "darwin" && ${os.major} >= 10)||${build_arch}=="ppc64"||${build_arch}=="x86_64"} {
- default_variants +gcc42
- pre-fetch {
- if {![variant_isset gcc42]} {
- error "$name must be built with +gcc42 on ${os.platform} ${os.major} / ${build_arch}."
- }
- }
-}
-
set triple ""
-if {[variant_isset gcc42]} {
- set version_gcc 4.2.4
- dist_subdir gcc42
- array set barch {ppc powerpc ppc64 powerpc64 i386 i386 x86_64 x86_64}
- if {[info exists barch(${build_arch})]} {
- set triple $barch(${build_arch})-apple-darwin${os.major}
- }
-} else {
- set version_gcc 4.0.4
- dist_subdir gcc40
- set triple ${os.arch}-apple-darwin${os.major}
+set version_gcc 4.2.4
+array set barch {ppc powerpc ppc64 powerpc64 i386 i386 x86_64 x86_64}
+if {[info exists barch(${build_arch})]} {
+ set triple $barch(${build_arch})-apple-darwin${os.major}
}
set buildhost "--build=${triple} --host=${triple}"
@@ -49,28 +33,28 @@
set gcclib lib/${name}/${triple}/${version_gcc}
distfiles ${dcore}:gcc ${dg95}:g95
-checksums ${dcore} md5 193e0a7a471cca70e374974bc5a60137 \
- ${dcore} sha1 55c664b33a4dc6b2130c47da28a1d6daab732ce9 \
- ${dcore} rmd160 af67dc8385942450f6b27ad83a6b9e3d22f779a1 \
- ${dg95} md5 e2b613769f28e8e0ae6a18d02a052dae \
- ${dg95} sha1 e6320fc80d8e388aad1fdbde53b2414353692b76 \
- ${dg95} rmd160 ac00c4cdd6dc0b90ef865040ff338b7f2d9296d1
+checksums ${dcore} md5 b7a4c167f6a05301591b139b356e36d0 \
+ ${dcore} sha1 540fa6949415ded321a7cbe80bbf8befe85e3566 \
+ ${dcore} rmd160 d54581d0a2ecc22718e6be101c6dc524a4a88463 \
+ ${dg95} md5 f9552aef0975c1dcf70950b6e6b18ff1 \
+ ${dg95} sha1 b5e503fd6459b65cbda73190685f9490230d9cff \
+ ${dg95} rmd160 98d03e9a1835f4b3553a72a798bdf1d90a757176
depends_lib port:libtool port:libiconv
patchfiles patch-Makefile.in.diff \
- patch-host-darwin.c.diff \
- patch-darwin-fallback.c.diff
+ patch-darwin.h.diff \
+ patch-lang.opt.diff
universal_variant no
use_parallel_build no
-extract.only ${dg95}
-
-pre-fetch {
- file delete ${distpath}/${dg95}
+if {[variant_isset gcc42]} {
+ return -code error "gcc42 variant has been deprecated. Uninstall ${name} and reinstall."
}
+extract.only ${dg95}
+
post-extract {
system "tar jxvf ${distpath}/${dcore} -C ${workpath}; \
cd ${worksrcpath}; tar zxvf libf95.a-${version}.tar.gz"
@@ -85,15 +69,10 @@
reinplace "s|gcc-lib|$name|" ${worksrcpath}/libf95.a-${version}/configure
reinplace "s|CFLAGS_FOR_TARGET = -O2 \$(CFLAGS)|CFLAGS_FOR_TARGET = ${configure.cflags}|" ${workpath}/gcc-${version_gcc}/Makefile.in
reinplace "s|^stage1_cflags=\"|stage1_cflags=\"${configure.cflags} ${configure.cc_archflags} |" ${workpath}/gcc-${version_gcc}/configure
- if {[variant_isset gcc42]} {
- reinplace "s|named_section|get_named_section|" ${worksrcpath}/trans-decl.c
- }
+ reinplace "s|named_section|get_named_section|" ${worksrcpath}/trans-decl.c
}
-# g95 fails to build with clang
-if {${configure.compiler} == "clang"} {
- configure.compiler llvm-gcc-4.2
-}
+compiler.blacklist clang
pre-configure {
file mkdir ${workpath}/gcc-${version_gcc}/${name}
@@ -122,16 +101,24 @@
--libdir=${prefix}/${gcclib} \
${gcc_configargs} ${buildhost}; \
make"
- if {[variant_isset gcc42]} {
- system "cd ${workpath}/gcc-${version_gcc}/${name}/gcc; \
- ar d libbackend.a options.o; \
- cd ${workpath}/gcc-${version_gcc}/gcc/; \
- patch -p0 < ${portpath}/files/patch-gcc.c.diff"
- }
+ system "cd ${workpath}/gcc-${version_gcc}/${name}/gcc; \
+ ar d libbackend.a options.o; \
+ cd ${workpath}/gcc-${version_gcc}/gcc/; \
+ patch -p0 < ${portpath}/files/patch-gcc.c.diff"
}
configure.args --with-gcc-dir=${workpath}/gcc-${version_gcc} ${buildhost}
+post-configure {
+ reinplace "s|\(f951_LDADD\)|(f951_LDADD) ${workpath}/gcc-${version_gcc}/g95/libdecnumber/*.o|" ${worksrcpath}/Makefile
+}
+
+pre-build {
+ if {${os.arch}=="i386"} {
+ reinplace "s|\(g95_LDADD\)|(g95_LDADD) ${workpath}/gcc-${version_gcc}/g95/gcc/driver-i386.o|" ${worksrcpath}/Makefile
+ }
+}
+
post-build {
system "cd ${worksrcpath}/libf95.a-${version}; \
export CC=\"${configure.cc}\"; \
@@ -152,29 +139,7 @@
}
platform darwin 8 {
- patchfiles-delete patch-host-darwin.c.diff patch-darwin-fallback.c.diff
depends_lib-append port:odcctools
}
-variant gcc42 description {link against gcc42} {
- master_sites-delete ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.0.4/:gcc
- master_sites-append ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.2.4/:gcc
- checksums-delete ${dcore} md5 193e0a7a471cca70e374974bc5a60137 \
- ${dcore} sha1 55c664b33a4dc6b2130c47da28a1d6daab732ce9 \
- ${dcore} rmd160 af67dc8385942450f6b27ad83a6b9e3d22f779a1
- checksums-append ${dcore} md5 b7a4c167f6a05301591b139b356e36d0 \
- ${dcore} sha1 540fa6949415ded321a7cbe80bbf8befe85e3566 \
- ${dcore} rmd160 d54581d0a2ecc22718e6be101c6dc524a4a88463
- patchfiles-append patch-lang.opt.diff patch-darwin.h.diff
- patchfiles-delete patch-host-darwin.c.diff patch-darwin-fallback.c.diff
-
- post-configure {
- reinplace "s|\(f951_LDADD\)|(f951_LDADD) ${workpath}/gcc-${version_gcc}/g95/libdecnumber/*.o|" ${worksrcpath}/Makefile
- }
-
- pre-build {
- if {${os.arch}=="i386"} {
- reinplace "s|\(g95_LDADD\)|(g95_LDADD) ${workpath}/gcc-${version_gcc}/g95/gcc/driver-i386.o|" ${worksrcpath}/Makefile
- }
- }
-}
+variant gcc42 description {deprecated variant} {}
Modified: trunk/dports/lang/g95/files/patch-Makefile.in.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-Makefile.in.diff 2012-12-23 05:31:45 UTC (rev 100758)
+++ trunk/dports/lang/g95/files/patch-Makefile.in.diff 2012-12-23 07:22:52 UTC (rev 100759)
@@ -1,14 +1,14 @@
---- Makefile.in.orig 2010-04-11 23:30:12.000000000 +0900
-+++ Makefile.in 2010-04-11 23:32:03.000000000 +0900
-@@ -1258,7 +1258,6 @@
+--- Makefile.in.orig 2010-04-22 13:23:24.000000000 +0900
++++ Makefile.in 2012-12-20 22:15:34.000000000 +0900
+@@ -1338,7 +1338,6 @@
install-exec-am: install-binPROGRAMS
@$(NORMAL_INSTALL)
- $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
install-html: install-html-am
-@@ -1335,14 +1334,9 @@
+ install-html-am:
+@@ -1423,14 +1422,9 @@
install-data-hook:
-ln -sf f951$(EXEEXT) $(DESTDIR)@DEST_LIBDIR@/cc1
if test "`uname`" = "Darwin" ; then \
@@ -23,7 +23,7 @@
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 -) ; \
-@@ -1357,8 +1351,8 @@
+@@ -1445,8 +1439,8 @@
fi
ggc-page.o: $(srcdir)/ggc-page40.c $(srcdir)/ggc-page41.c
Deleted: trunk/dports/lang/g95/files/patch-darwin-fallback.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-darwin-fallback.c.diff 2012-12-23 05:31:45 UTC (rev 100758)
+++ trunk/dports/lang/g95/files/patch-darwin-fallback.c.diff 2012-12-23 07:22:52 UTC (rev 100759)
@@ -1,82 +0,0 @@
---- gcc-4.0.4/gcc/config/rs6000/darwin-fallback.c.orig 2007-11-11 10:46:12.000000000 +0900
-+++ gcc-4.0.4/gcc/config/rs6000/darwin-fallback.c 2007-11-11 11:25:18.000000000 +0900
-@@ -261,9 +261,9 @@
- };
-
- #define UC_FLAVOR_SIZE \
-- (sizeof (struct mcontext) - sizeof (ppc_vector_state_t))
-+ (sizeof (struct __darwin_mcontext) - sizeof (ppc_vector_state_t))
-
--#define UC_FLAVOR_VEC_SIZE (sizeof (struct mcontext))
-+#define UC_FLAVOR_VEC_SIZE (sizeof (struct __darwin_mcontext))
-
- #define UC_FLAVOR64_SIZE \
- (sizeof (struct gcc_mcontext64) - sizeof (ppc_vector_state_t))
-@@ -354,33 +354,33 @@
- }
- else
- {
-- struct mcontext *m = uctx->uc_mcontext;
-+ struct __darwin_mcontext *m = (struct __darwin_mcontext *)uctx->uc_mcontext;
- int i;
-
-- float_state = &m->fs;
-- vector_state = &m->vs;
-+ float_state = &m->__fs;
-+ vector_state = &m->__vs;
-
-- new_cfa = m->ss.r1;
-+ new_cfa = m->__ss.__r1;
-
-- set_offset (CR2_REGNO, &m->ss.cr);
-+ set_offset (CR2_REGNO, &m->__ss.__cr);
- for (i = 0; i < 32; i++)
-- set_offset (i, &m->ss.r0 + i);
-- set_offset (XER_REGNO, &m->ss.xer);
-- set_offset (LINK_REGISTER_REGNUM, &m->ss.lr);
-- set_offset (COUNT_REGISTER_REGNUM, &m->ss.ctr);
-+ set_offset (i, &m->__ss.__r0 + i);
-+ set_offset (XER_REGNO, &m->__ss.__xer);
-+ set_offset (LINK_REGISTER_REGNUM, &m->__ss.__lr);
-+ set_offset (COUNT_REGISTER_REGNUM, &m->__ss.__ctr);
-
- if (is_vector)
-- set_offset (VRSAVE_REGNO, &m->ss.vrsave);
-+ set_offset (VRSAVE_REGNO, &m->__ss.__vrsave);
-
- /* Sometimes, srr0 points to the instruction that caused the exception,
- and sometimes to the next instruction to be executed; we want
- the latter. */
-- if (m->es.exception == 3 || m->es.exception == 4
-- || m->es.exception == 6
-- || (m->es.exception == 7 && !(m->ss.srr1 & 0x10000)))
-- return_addr = m->ss.srr0 + 4;
-+ if (m->__es.__exception == 3 || m->__es.__exception == 4
-+ || m->__es.__exception == 6
-+ || (m->__es.__exception == 7 && !(m->__ss.__srr1 & 0x10000)))
-+ return_addr = m->__ss.__srr0 + 4;
- else
-- return_addr = m->ss.srr0;
-+ return_addr = m->__ss.__srr0;
- }
-
- fs->cfa_how = CFA_REG_OFFSET;
-@@ -399,14 +399,14 @@
- set_offset (ARG_POINTER_REGNUM, &return_addr);
-
- for (i = 0; i < 32; i++)
-- set_offset (32 + i, float_state->fpregs + i);
-- set_offset (SPEFSCR_REGNO, &float_state->fpscr);
-+ set_offset (32 + i, float_state->__fpregs + i);
-+ set_offset (SPEFSCR_REGNO, &float_state->__fpscr);
-
- if (is_vector)
- {
- for (i = 0; i < 32; i++)
-- set_offset (FIRST_ALTIVEC_REGNO + i, vector_state->save_vr + i);
-- set_offset (VSCR_REGNO, vector_state->save_vscr);
-+ set_offset (FIRST_ALTIVEC_REGNO + i, vector_state->__save_vr + i);
-+ set_offset (VSCR_REGNO, vector_state->__save_vscr);
- }
-
- return true;
Deleted: trunk/dports/lang/g95/files/patch-host-darwin.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-host-darwin.c.diff 2012-12-23 05:31:45 UTC (rev 100758)
+++ trunk/dports/lang/g95/files/patch-host-darwin.c.diff 2012-12-23 07:22:52 UTC (rev 100759)
@@ -1,31 +0,0 @@
---- gcc-4.0.4/gcc/config/rs6000/host-darwin.c.orig 2007-11-10 13:24:23.000000000 +0900
-+++ gcc-4.0.4/gcc/config/rs6000/host-darwin.c 2007-11-10 13:19:23.000000000 +0900
-@@ -33,10 +33,6 @@
- static void segv_handler (int, siginfo_t *, void *);
- static void darwin_rs6000_extra_signals (void);
-
--/* This doesn't have a prototype in signal.h in 10.2.x and earlier,
-- fixed in later releases. */
--extern int sigaltstack(const struct sigaltstack *, struct sigaltstack *);
--
- #undef HOST_HOOKS_EXTRA_SIGNALS
- #define HOST_HOOKS_EXTRA_SIGNALS darwin_rs6000_extra_signals
-
-@@ -60,7 +60,7 @@
- which case the next line will segfault _again_. Handle this case. */
- signal (SIGSEGV, segv_crash_handler);
-
-- faulting_insn = *(unsigned *)uc->uc_mcontext->ss.srr0;
-+ faulting_insn = *(unsigned *)uc->uc_mcontext->__ss.__srr0;
-
- /* Note that this only has to work for GCC, so we don't have to deal
- with all the possible cases (GCC has no AltiVec code, for
-@@ -109,7 +109,7 @@
- }
-
- fprintf (stderr, "[address=%08lx pc=%08x]\n",
-- uc->uc_mcontext->es.dar, uc->uc_mcontext->ss.srr0);
-+ uc->uc_mcontext->__es.__dar, uc->uc_mcontext->__ss.__srr0);
- internal_error ("Segmentation Fault");
- exit (FATAL_EXIT_CODE);
- }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20121222/b4ce947e/attachment-0001.html>
More information about the macports-changes
mailing list