Ticket #17090: apr-universal.diff

File apr-universal.diff, 6.4 KB (added by nox@…, 15 years ago)

Universal support without muniversal PortGroup

  • files/patch-universal.diff

     
     1--- include/apr.h.in.orig       2009-09-06 15:41:03.000000000 +0200
     2+++ include/apr.h.in    2009-09-06 15:44:35.000000000 +0200
     3@@ -277,8 +277,13 @@
     4 typedef  @int_value@             apr_int32_t;
     5 typedef  unsigned @int_value@    apr_uint32_t;
     6 
     7-typedef  @long_value@            apr_int64_t;
     8-typedef  unsigned @long_value@   apr_uint64_t;
     9+#ifdef __LP64__
     10+typedef  long            apr_int64_t;
     11+typedef  unsigned long   apr_uint64_t;
     12+#else
     13+typedef  long long            apr_int64_t;
     14+typedef  unsigned long long   apr_uint64_t;
     15+#endif
     16 
     17 typedef  @size_t_value@          apr_size_t;
     18 typedef  @ssize_t_value@         apr_ssize_t;
     19@@ -286,7 +291,11 @@
     20 typedef  @socklen_t_value@       apr_socklen_t;
     21 typedef  @ino_t_value@           apr_ino_t;
     22 
     23-#define APR_SIZEOF_VOIDP @voidp_size@
     24+#ifdef __LP64__
     25+#define APR_SIZEOF_VOIDP 8
     26+#else
     27+#define APR_SIZEOF_VOIDP 4
     28+#endif
     29 
     30 #if APR_SIZEOF_VOIDP == 8
     31 typedef  apr_uint64_t            apr_uintptr_t;
     32@@ -295,11 +304,20 @@
     33 #endif
     34 
     35 /* Are we big endian? */
     36-#define APR_IS_BIGENDIAN       @bigendian@
     37+#ifdef __BIG_ENDIAN__
     38+#define APR_IS_BIGENDIAN       1
     39+#else
     40+#define APR_IS_BIGENDIAN       0
     41+#endif
     42 
     43 /* Mechanisms to properly type numeric literals */
     44-@int64_literal@
     45-@uint64_literal@
     46+#ifdef __LP64__
     47+#define APR_INT64_C(val) (val##L)
     48+#define APR_UINT64_C(val) (val##UL)
     49+#else
     50+#define APR_INT64_C(val) (val##LL)
     51+#define APR_UINT64_C(val) (val##ULL)
     52+#endif
     53 
     54 #ifdef INT16_MIN
     55 #define APR_INT16_MIN   INT16_MIN
     56@@ -448,19 +466,31 @@
     57 @size_t_fmt@
     58 
     59 /* And APR_OFF_T_FMT */
     60-@off_t_fmt@
     61+#define APR_OFF_T_FMT APR_INT64_T_FMT
     62 
     63 /* And APR_PID_T_FMT */
     64 @pid_t_fmt@
     65 
     66 /* And APR_INT64_T_FMT */
     67-@int64_t_fmt@
     68+#ifdef __LP64__
     69+#define APR_INT64_T_FMT "ld"
     70+#else
     71+#define APR_INT64_T_FMT "lld"
     72+#endif
     73 
     74 /* And APR_UINT64_T_FMT */
     75-@uint64_t_fmt@
     76+#ifdef __LP64__
     77+#define APR_UINT64_T_FMT "lu"
     78+#else
     79+#define APR_UINT64_T_FMT "llu"
     80+#endif
     81 
     82 /* And APR_UINT64_T_HEX_FMT */
     83-@uint64_t_hex_fmt@
     84+#ifdef __LP64__
     85+#define APR_UINT64_T_HEX_FMT "lx"
     86+#else
     87+#define APR_UINT64_T_HEX_FMT "llx"
     88+#endif
     89 
     90 /* Does the proc mutex lock threads too */
     91 #define APR_PROC_MUTEX_IS_GLOBAL      @proc_mutex_is_global@
     92--- include/arch/unix/apr_private.h.in.orig     2009-09-06 15:45:07.000000000 +0200
     93+++ include/arch/unix/apr_private.h.in  2009-09-06 15:48:21.000000000 +0200
     94@@ -5,10 +5,14 @@
     95 
     96 /* Define as function which can be used for conversion of strings to
     97    apr_int64_t */
     98-#undef APR_INT64_STRFN
     99+#ifdef __LP64__
     100+#define APR_INT64_STRFN strtol
     101+#else
     102+#define APR_INT64_STRFN strtoll
     103+#endif
     104 
     105 /* Define as function used for conversion of strings to apr_off_t */
     106-#undef APR_OFF_T_STRFN
     107+#define APR_OFF_T_STRFN APR_INT64_STRFN
     108 
     109 /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
     110    systems. This function is required for `alloca.c' support on those systems.
     111@@ -744,7 +748,11 @@
     112 #undef READDIR_IS_THREAD_SAFE
     113 
     114 /* Define to 1 if the `setpgrp' function takes no argument. */
     115-#undef SETPGRP_VOID
     116+#ifdef __DARWIN_UNIX03
     117+#define SETPGRP_VOID 1
     118+#else
     119+/* #undef SETPGRP_VOID */
     120+#endif
     121 
     122 /* */
     123 #undef SIGWAIT_TAKES_ONE_ARG
     124@@ -756,7 +764,11 @@
     125 #undef SIZEOF_INT
     126 
     127 /* The size of `long', as computed by sizeof. */
     128-#undef SIZEOF_LONG
     129+#ifdef __LP64__
     130+#define SIZEOF_LONG 8
     131+#else
     132+#define SIZEOF_LONG 4
     133+#endif
     134 
     135 /* The size of `long long', as computed by sizeof. */
     136 #undef SIZEOF_LONG_LONG
     137@@ -771,16 +783,28 @@
     138 #undef SIZEOF_SHORT
     139 
     140 /* The size of size_t */
     141-#undef SIZEOF_SIZE_T
     142+#ifdef __LP64__
     143+#define SIZEOF_SIZE_T 8
     144+#else
     145+#define SIZEOF_SIZE_T 4
     146+#endif
     147 
     148 /* The size of ssize_t */
     149-#undef SIZEOF_SSIZE_T
     150+#ifdef __LP64__
     151+#define SIZEOF_SSIZE_T 8
     152+#else
     153+#define SIZEOF_SSIZE_T 4
     154+#endif
     155 
     156 /* The size of struct iovec */
     157 #undef SIZEOF_STRUCT_IOVEC
     158 
     159 /* The size of `void*', as computed by sizeof. */
     160-#undef SIZEOF_VOIDP
     161+#ifdef __LP64__
     162+#define SIZEOF_VOIDP 8
     163+#else
     164+#define SIZEOF_VOIDP 4
     165+#endif
     166 
     167 /* If using the C implementation of alloca, define if you know the
     168    direction of stack growth for your system; otherwise it will be
     169@@ -800,7 +824,7 @@
     170 #undef SYSVSEM_IS_GLOBAL
     171 
     172 /* Define if use of generic atomics is requested */
     173-#undef USE_ATOMICS_GENERIC
     174+/* #undef USE_ATOMICS_GENERIC */
     175 
     176 /* Define if BeOS Semaphores will be used */
     177 #undef USE_BEOSSEM
     178--- configure.orig      2009-09-06 15:49:06.000000000 +0200
     179+++ configure   2009-09-06 15:50:44.000000000 +0200
     180@@ -25775,7 +25775,6 @@
     181 if test $force_generic_atomics = yes; then
     182 
     183 cat >>confdefs.h <<\_ACEOF
     184-#define USE_ATOMICS_GENERIC 1
     185 _ACEOF
     186 
     187 fi
     188@@ -32905,7 +32904,6 @@
     189 
     190 
     191 cat >>confdefs.h <<_ACEOF
     192-#define SIZEOF_VOIDP $ac_cv_sizeof_voidp
     193 _ACEOF
     194 
     195 
     196@@ -35524,7 +35522,6 @@
     197 if test $ac_cv_func_setpgrp_void = yes; then
     198 
     199 cat >>confdefs.h <<\_ACEOF
     200-#define SETPGRP_VOID 1
     201 _ACEOF
     202 
     203 fi
     204@@ -35961,7 +35958,6 @@
     205 
     206 
     207 cat >>confdefs.h <<_ACEOF
     208-#define SIZEOF_VOIDP $ac_cv_sizeof_voidp
     209 _ACEOF
     210 
     211 
     212@@ -37047,7 +37043,6 @@
     213 
     214 
     215 cat >>confdefs.h <<_ACEOF
     216-#define SIZEOF_LONG $ac_cv_sizeof_long
     217 _ACEOF
     218 
     219 
     220@@ -38332,7 +38327,6 @@
     221 $as_echo "$ac_cv_sizeof_ssize_t" >&6; }
     222 
     223 cat >>confdefs.h <<_ACEOF
     224-#define SIZEOF_SSIZE_T $ac_cv_sizeof_ssize_t
     225 _ACEOF
     226 
     227 
     228@@ -38423,7 +38417,6 @@
     229 $as_echo "$ac_cv_sizeof_size_t" >&6; }
     230 
     231 cat >>confdefs.h <<_ACEOF
     232-#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t
     233 _ACEOF
     234 
     235 
     236@@ -40180,7 +40173,6 @@
     237 if test "$have_int64_strfn" = "1"; then
     238 
     239 cat >>confdefs.h <<_ACEOF
     240-#define APR_INT64_STRFN $int64_strfn
     241 _ACEOF
     242 
     243 fi
     244@@ -40198,7 +40190,6 @@
     245 fi
     246 
     247 cat >>confdefs.h <<_ACEOF
     248-#define APR_OFF_T_STRFN $off_t_strfn
     249 _ACEOF
     250 
     251 
  • Portfile

     
    3333        use_parallel_build      no
    3434}
    3535
     36if {[variant_isset universal]} {
     37        patchfiles-append       patch-universal.diff
     38
     39        post-destroot {
     40                reinplace {s/-arch .*//} ${destroot}${prefix}/share/apr-1/build/apr_rules.mk
     41        }
     42}
     43
    3644livecheck.check regex
    3745livecheck.url   http://apache.org/dist/apr/
    3846livecheck.regex {<a href="#apr">APR (\d+(?:\.\d+)*) is the latest available version</a>}