Weak aliases are unsupported on Darwin, so don't do it. Fixes lots of dependencies. Bump PKGREVISION.diff -r1.20 -r1.21 pkgsrc/lang/g95/Makefile
(jperkin)
@@ -1,18 +1,18 @@ | @@ -1,18 +1,18 @@ | |||
1 | # $NetBSD: Makefile,v 1.20 2013/12/10 11:44:47 jperkin Exp $ | 1 | # $NetBSD: Makefile,v 1.21 2014/02/17 16:49:14 jperkin Exp $ | |
2 | 2 | |||
3 | DISTNAME= g95_source | 3 | DISTNAME= g95_source | |
4 | PKGNAME= g95-0.93 | 4 | PKGNAME= g95-0.93 | |
5 | PKGREVISION= 4 | 5 | PKGREVISION= 5 | |
6 | CATEGORIES= lang | 6 | CATEGORIES= lang | |
7 | MASTER_SITES= http://ftp.g95.org/v${PKGVERSION_NOREV}/ | 7 | MASTER_SITES= http://ftp.g95.org/v${PKGVERSION_NOREV}/ | |
8 | EXTRACT_SUFX= .tgz | 8 | EXTRACT_SUFX= .tgz | |
9 | DISTFILES= ${DEFAULT_DISTFILES} gcc-core-${GCC_VER}.tar.bz2 | 9 | DISTFILES= ${DEFAULT_DISTFILES} gcc-core-${GCC_VER}.tar.bz2 | |
10 | SITES.gcc-core-4.1.2.tar.bz2= ${MASTER_SITE_GNU:=gcc/gcc-${GCC_VER}/} | 10 | SITES.gcc-core-4.1.2.tar.bz2= ${MASTER_SITE_GNU:=gcc/gcc-${GCC_VER}/} | |
11 | 11 | |||
12 | MAINTAINER= wennmach@NetBSD.org | 12 | MAINTAINER= wennmach@NetBSD.org | |
13 | HOMEPAGE= http://www.g95.org/ | 13 | HOMEPAGE= http://www.g95.org/ | |
14 | COMMENT= Fortran 95 compiler from g95.org | 14 | COMMENT= Fortran 95 compiler from g95.org | |
15 | LICENSE= gnu-gpl-v2 | 15 | LICENSE= gnu-gpl-v2 | |
16 | 16 | |||
17 | USE_TOOLS+= gmake gtar automake autoconf | 17 | USE_TOOLS+= gmake gtar automake autoconf | |
18 | USE_LIBTOOL= yes | 18 | USE_LIBTOOL= yes |
@@ -1,14 +1,14 @@ | @@ -1,14 +1,14 @@ | |||
1 | $NetBSD: distinfo,v 1.18 2013/09/23 17:56:32 asau Exp $ | 1 | $NetBSD: distinfo,v 1.19 2014/02/17 16:49:14 jperkin Exp $ | |
2 | 2 | |||
3 | SHA1 (g95_source.tgz) = b5e503fd6459b65cbda73190685f9490230d9cff | 3 | SHA1 (g95_source.tgz) = b5e503fd6459b65cbda73190685f9490230d9cff | |
4 | RMD160 (g95_source.tgz) = 98d03e9a1835f4b3553a72a798bdf1d90a757176 | 4 | RMD160 (g95_source.tgz) = 98d03e9a1835f4b3553a72a798bdf1d90a757176 | |
5 | Size (g95_source.tgz) = 1355198 bytes | 5 | Size (g95_source.tgz) = 1355198 bytes | |
6 | SHA1 (gcc-core-4.1.2.tar.bz2) = d6875295f6df1bec4a6f4ab8f0da54bfb8d97306 | 6 | SHA1 (gcc-core-4.1.2.tar.bz2) = d6875295f6df1bec4a6f4ab8f0da54bfb8d97306 | |
7 | RMD160 (gcc-core-4.1.2.tar.bz2) = 612cbd5b795f7095fb3f565e6a8eaaee82c472c5 | 7 | RMD160 (gcc-core-4.1.2.tar.bz2) = 612cbd5b795f7095fb3f565e6a8eaaee82c472c5 | |
8 | Size (gcc-core-4.1.2.tar.bz2) = 17485561 bytes | 8 | Size (gcc-core-4.1.2.tar.bz2) = 17485561 bytes | |
9 | SHA1 (patch-ab) = 7429a4da26aa573dcdd94bf417da1e009f95d273 | 9 | SHA1 (patch-ab) = 7429a4da26aa573dcdd94bf417da1e009f95d273 | |
10 | SHA1 (patch-ac) = b20a90cc2f9078cf0048980b75fa6836da0f28a8 | 10 | SHA1 (patch-ac) = b20a90cc2f9078cf0048980b75fa6836da0f28a8 | |
11 | SHA1 (patch-g95spec.c) = d6f434e715835cd39511c45ed18632c8401b78a2 | 11 | SHA1 (patch-g95spec.c) = d6f434e715835cd39511c45ed18632c8401b78a2 | |
12 | SHA1 (patch-gcc_Makefile.in) = cc5cc142a85612ebf2d38513e4b05db0ae795268 | 12 | SHA1 (patch-gcc_Makefile.in) = cc5cc142a85612ebf2d38513e4b05db0ae795268 | |
13 | SHA1 (patch-gcc_config.gcc) = 9da8f32372c64b1590d97e3f26aec0d5652cc959 | 13 | SHA1 (patch-gcc_config.gcc) = 9da8f32372c64b1590d97e3f26aec0d5652cc959 | |
14 | SHA1 (patch-gcc_config_dragonfly-spec.h) = bf0c97caa314714542cf8cc63fdf0c73bda80511 | 14 | SHA1 (patch-gcc_config_dragonfly-spec.h) = bf0c97caa314714542cf8cc63fdf0c73bda80511 | |
@@ -20,14 +20,14 @@ SHA1 (patch-gcc_config_t-dragonfly) = dd | @@ -20,14 +20,14 @@ SHA1 (patch-gcc_config_t-dragonfly) = dd | |||
20 | SHA1 (patch-gcc_config_t-dragonfly-thread) = ebdb58dacf0dc5d0bf2f1f1707a7c6ab29ee308c | 20 | SHA1 (patch-gcc_config_t-dragonfly-thread) = ebdb58dacf0dc5d0bf2f1f1707a7c6ab29ee308c | |
21 | SHA1 (patch-gcc_ginclude_stddef.h) = 60f51a470e03173803b5e20b1fa4d6882e8d1fe9 | 21 | SHA1 (patch-gcc_ginclude_stddef.h) = 60f51a470e03173803b5e20b1fa4d6882e8d1fe9 | |
22 | SHA1 (patch-gcc_toplev.h) = 4894b45bf0fd30de0610a36827ef1089e0ec6bd5 | 22 | SHA1 (patch-gcc_toplev.h) = 4894b45bf0fd30de0610a36827ef1089e0ec6bd5 | |
23 | SHA1 (patch-libf95.a-0.92_configure) = e23998692b410acaabaf24f591b659d2b229bcca | 23 | SHA1 (patch-libf95.a-0.92_configure) = e23998692b410acaabaf24f591b659d2b229bcca | |
24 | SHA1 (patch-libf95.a-0.92_io_atof.c) = 0c3a209815be3a97d984cb9a15ee888f93110d1d | 24 | SHA1 (patch-libf95.a-0.92_io_atof.c) = 0c3a209815be3a97d984cb9a15ee888f93110d1d | |
25 | SHA1 (patch-libf95.a-0.93_Makefile.am) = a5e6a8fa0cd05e6e4a581c027d97cdf68dd2a6f8 | 25 | SHA1 (patch-libf95.a-0.93_Makefile.am) = a5e6a8fa0cd05e6e4a581c027d97cdf68dd2a6f8 | |
26 | SHA1 (patch-libf95.a-0.93_intrinsics_dot__product10.c) = a2fe19bab2a6f719f541692fd4ef7e67766a18e5 | 26 | SHA1 (patch-libf95.a-0.93_intrinsics_dot__product10.c) = a2fe19bab2a6f719f541692fd4ef7e67766a18e5 | |
27 | SHA1 (patch-libf95.a-0.93_intrinsics_matmul10.c) = 30609c3183a98610e4005fd4c0d12cccec0855a1 | 27 | SHA1 (patch-libf95.a-0.93_intrinsics_matmul10.c) = 30609c3183a98610e4005fd4c0d12cccec0855a1 | |
28 | SHA1 (patch-libf95.a-0.93_intrinsics_random.c) = 5445f78b267f742a2bf711aa0f5e06683dda1a68 | 28 | SHA1 (patch-libf95.a-0.93_intrinsics_random.c) = 5445f78b267f742a2bf711aa0f5e06683dda1a68 | |
29 | SHA1 (patch-libf95.a-0.93_io_read.c) = 594bcfb15e59dcaaec5a6a21a58af17e8f41eae9 | 29 | SHA1 (patch-libf95.a-0.93_io_read.c) = 594bcfb15e59dcaaec5a6a21a58af17e8f41eae9 | |
30 | SHA1 (patch-libf95.a-0.93_math_ff.c) = 353121bc08a86765d18b0e6f051ba91f7e65e9c2 | 30 | SHA1 (patch-libf95.a-0.93_math_ff.c) = 353121bc08a86765d18b0e6f051ba91f7e65e9c2 | |
31 | SHA1 (patch-libf95.a-0.93_math_x87.S) = d1eb02bd2358b6abb9b8dc3e32629cba540adcc4 | 31 | SHA1 (patch-libf95.a-0.93_math_x87.S) = d1eb02bd2358b6abb9b8dc3e32629cba540adcc4 | |
32 | SHA1 (patch-libf95.a-0.93_quad_power16.c) = fc7375aa90ecf75bb8ba26d41739614040b16e09 | 32 | SHA1 (patch-libf95.a-0.93_quad_power16.c) = fc7375aa90ecf75bb8ba26d41739614040b16e09 | |
33 | SHA1 (patch-libf95.a-0.93_runtime_main.c) = a993a28e0c766c1ae0c73c5bda91b1446d6d944d | 33 | SHA1 (patch-libf95.a-0.93_runtime_main.c) = dfde68072f38bf5bbb9c54ebeea5b9ce07d0c6be |
@@ -1,52 +1,59 @@ | @@ -1,52 +1,59 @@ | |||
1 | $NetBSD: patch-libf95.a-0.93_runtime_main.c,v 1.2 2013/09/20 23:06:07 joerg Exp $ | 1 | $NetBSD: patch-libf95.a-0.93_runtime_main.c,v 1.3 2014/02/17 16:49:14 jperkin Exp $ | |
2 | 2 | |||
3 | * fixes missing restore stack address. PR pkg/47906 | 3 | * fixes missing restore stack address. PR pkg/47906 | |
4 | * Make MAIN_ weak to allow linking libf95 dynamically. | 4 | * Make MAIN_ weak to allow linking libf95 dynamically. | |
5 | 5 | |||
6 | --- libf95.a-0.93/runtime/main.c.orig 2010-04-18 15:47:28.000000000 +0000 | 6 | --- libf95.a-0.93/runtime/main.c.orig 2010-04-18 15:47:28.000000000 +0000 | |
7 | +++ libf95.a-0.93/runtime/main.c | 7 | +++ libf95.a-0.93/runtime/main.c | |
8 | @@ -37,11 +37,12 @@ | 8 | @@ -37,11 +37,14 @@ | |
9 | void __main(void) {} | 9 | void __main(void) {} | |
10 | #endif | 10 | #endif | |
11 | 11 | |||
12 | - | 12 | - | |
13 | - | 13 | - | |
14 | - | 14 | - | |
15 | /* main()-- Entry point for the fortran program */ | 15 | /* main()-- Entry point for the fortran program */ | |
16 | -void MAIN_(void); | 16 | -void MAIN_(void); | |
17 | +#if __GNUC__ - 0 == 4 && __GNUC_MINOR__ < 2 | 17 | +#ifdef __APPLE__ | |
18 | +void MAIN_(void); | |||
19 | +#elif __GNUC__ - 0 == 4 && __GNUC_MINOR__ < 2 | |||
18 | +extern void weak_MAIN_(void) __attribute__((__weakref__("MAIN_"))); | 20 | +extern void weak_MAIN_(void) __attribute__((__weakref__("MAIN_"))); | |
19 | +#else | 21 | +#else | |
20 | +static void weak_MAIN_(void) __attribute__((__weakref__("MAIN_"))); | 22 | +static void weak_MAIN_(void) __attribute__((__weakref__("MAIN_"))); | |
21 | +#endif | 23 | +#endif | |
22 | 24 | |||
23 | int main(int argc, char *argv[]) { | 25 | int main(int argc, char *argv[]) { | |
24 | 26 | |||
25 | @@ -50,17 +51,25 @@ int main(int argc, char *argv[]) { | 27 | @@ -50,17 +53,30 @@ int main(int argc, char *argv[]) { | |
26 | * unaligned. */ | 28 | * unaligned. */ | |
27 | 29 | |||
28 | #if HAVE_REAL_10 == 1 || HAVE_REAL_10 == 2 | 30 | #if HAVE_REAL_10 == 1 || HAVE_REAL_10 == 2 | |
29 | + int diff; | 31 | + int diff; | |
30 | asm("mov %%esp, %%eax\n" | 32 | asm("mov %%esp, %%eax\n" | |
31 | "and $0x04, %%eax\n" | 33 | "and $0x04, %%eax\n" | |
32 | - "sub %%eax, %%esp\n" : : : "%eax"); | 34 | - "sub %%eax, %%esp\n" : : : "%eax"); | |
33 | + "movl %%eax, %0\n" | 35 | + "movl %%eax, %0\n" | |
34 | + "sub %%eax, %%esp\n" : "=r"(diff) : : "%eax"); | 36 | + "sub %%eax, %%esp\n" : "=r"(diff) : : "%eax"); | |
35 | #endif | 37 | #endif | |
36 | 38 | |||
37 | g95_runtime_start(argc, argv); | 39 | g95_runtime_start(argc, argv); | |
38 | 40 | |||
39 | - MAIN_(); /* Call the Fortran main program. */ | 41 | - MAIN_(); /* Call the Fortran main program. */ | |
42 | +#ifdef __APPLE__ | |||
43 | + if (MAIN_) | |||
44 | + MAIN_(); /* Call the Fortran main program. */ | |||
45 | +#else | |||
40 | + if (weak_MAIN_) | 46 | + if (weak_MAIN_) | |
41 | + weak_MAIN_(); /* Call the Fortran main program. */ | 47 | + weak_MAIN_(); /* Call the Fortran main program. */ | |
48 | +#endif | |||
42 | 49 | |||
43 | memory_done(); | 50 | memory_done(); | |
44 | g95_runtime_stop(); | 51 | g95_runtime_stop(); | |
45 | 52 | |||
46 | +#if HAVE_REAL_10 == 1 || HAVE_REAL_10 == 2 | 53 | +#if HAVE_REAL_10 == 1 || HAVE_REAL_10 == 2 | |
47 | + asm("mov %0, %%eax\n" | 54 | + asm("mov %0, %%eax\n" | |
48 | + "add %%eax, %%esp\n" : : "r"(diff) : "%eax"); | 55 | + "add %%eax, %%esp\n" : : "r"(diff) : "%eax"); | |
49 | +#endif | 56 | +#endif | |
50 | + | 57 | + | |
51 | return 0; | 58 | return 0; | |
52 | } | 59 | } |