[libdispatch-changes] [59] trunk

source_changes at macosforge.org source_changes at macosforge.org
Tue Oct 27 16:29:17 PDT 2009


Revision: 59
          http://trac.macosforge.org/projects/libdispatch/changeset/59
Author:   robert at fledge.watson.org
Date:     2009-10-27 16:29:17 -0700 (Tue, 27 Oct 2009)
Log Message:
-----------
Move blocks detection to separate autoconf macro.

Submitted by:	Paolo Bonzini <bonzini at gnu.org>

Modified Paths:
--------------
    trunk/configure.ac

Added Paths:
-----------
    trunk/m4/blocks.m4

Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac	2009-10-27 23:24:40 UTC (rev 58)
+++ trunk/configure.ac	2009-10-27 23:29:17 UTC (rev 59)
@@ -166,68 +166,9 @@
 AC_CHECK_FUNCS([pthread_key_init_np pthread_main_np mach_absolute_time malloc_create_zone sem_init])
 
 DISPATCH_C_PRIVATE_EXTERN
+DISPATCH_C_BLOCKS
 
 #
-# Detect compiler support for Blocks; perhaps someday -fblocks won't be
-# required, in which case we'll need to change this.
-#
-AC_CACHE_CHECK([for C Blocks support], [dispatch_cv_cblocks], [
-  saveCFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -fblocks"
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[(void)^{int i; i = 0; }();])], [
-    CFLAGS="$saveCFLAGS"
-    dispatch_cv_cblocks="-fblocks"
-  ], [
-    CFLAGS="$saveCFLAGS"
-    dispatch_cv_cblocks="no"
-  ])
-])
-
-#
-# Allow configure to be passed a path to the directory where it should look
-# for the Blocks runtime library, if any.
-#
-AC_ARG_WITH([blocks-runtime],
-  [AS_HELP_STRING([--with-blocks-runtime],
-    [Specify path to the blocks runtime])],
-  [blocks_runtime=${withval}
-    LIBS="$LIBS -L$blocks_runtime"]
-)
-
-AS_IF([test "x$dispatch_cv_cblocks" != "xno"], [
-    CBLOCKS_FLAGS="$dispatch_cv_cblocks"
-
-    #
-    # It may be necessary to directly link the Blocks runtime on some
-    # systems, so give it a try if we can't link a C program that uses
-    # Blocks.  We will want to remove this at somepoint, as really -fblocks
-    # should force that linkage already.
-    #
-    saveCFLAGS="$CFLAGS"
-    CFLAGS="$CFLAGS -fblocks"
-    AC_MSG_CHECKING([whether additional libraries are required for the Blocks runtime])
-    AC_TRY_LINK([], [
-	^{ int j; j=0; }();
-    ], [
-	AC_MSG_RESULT([no]);
-    ], [
-      saveLIBS="$LIBS"
-      LIBS="$LIBS -lBlocksRuntime"
-      AC_TRY_LINK([], [
-	^{ int k; k=0; }();
-      ], [
-	AC_MSG_RESULT([-lBlocksRuntime])
-      ], [
-	AC_MSG_ERROR([can't find Blocks runtime])
-      ])
-    ])
-    CFLAGS="$saveCFLAGS"
-], [
-    CBLOCKS_FLAGS=""
-])
-AC_SUBST([CBLOCKS_FLAGS])
-
-#
 # Temporary: some versions of clang do not mark __builtin_trap() as
 # __attribute__((__noreturn__)).  Detect and add if required.
 #

Added: trunk/m4/blocks.m4
===================================================================
--- trunk/m4/blocks.m4	                        (rev 0)
+++ trunk/m4/blocks.m4	2009-10-27 23:29:17 UTC (rev 59)
@@ -0,0 +1,61 @@
+AC_DEFUN([DISPATCH_C_BLOCKS], [
+#
+# Detect compiler support for Blocks; perhaps someday -fblocks won't be
+# required, in which case we'll need to change this.
+#
+AC_CACHE_CHECK([for C Blocks support], [dispatch_cv_cblocks], [
+  saveCFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -fblocks"
+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[(void)^{int i; i = 0; }();])], [
+    CFLAGS="$saveCFLAGS"
+    dispatch_cv_cblocks="-fblocks"
+  ], [
+    CFLAGS="$saveCFLAGS"
+    dispatch_cv_cblocks="no"
+  ])
+])
+
+#
+# Allow configure to be passed a path to the directory where it should look
+# for the Blocks runtime library, if any.
+#
+AC_ARG_WITH([blocks-runtime],
+  [AS_HELP_STRING([--with-blocks-runtime],
+    [Specify path to the blocks runtime])],
+  [blocks_runtime=${withval}
+    LIBS="$LIBS -L$blocks_runtime"]
+)
+
+AS_IF([test "x$dispatch_cv_cblocks" != "xno"], [
+    CBLOCKS_FLAGS="$dispatch_cv_cblocks"
+
+    #
+    # It may be necessary to directly link the Blocks runtime on some
+    # systems, so give it a try if we can't link a C program that uses
+    # Blocks.  We will want to remove this at somepoint, as really -fblocks
+    # should force that linkage already.
+    #
+    saveCFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS -fblocks"
+    AC_MSG_CHECKING([whether additional libraries are required for the Blocks runtime])
+    AC_TRY_LINK([], [
+	^{ int j; j=0; }();
+    ], [
+	AC_MSG_RESULT([no]);
+    ], [
+      saveLIBS="$LIBS"
+      LIBS="$LIBS -lBlocksRuntime"
+      AC_TRY_LINK([], [
+	^{ int k; k=0; }();
+      ], [
+	AC_MSG_RESULT([-lBlocksRuntime])
+      ], [
+	AC_MSG_ERROR([can't find Blocks runtime])
+      ])
+    ])
+    CFLAGS="$saveCFLAGS"
+], [
+    CBLOCKS_FLAGS=""
+])
+AC_SUBST([CBLOCKS_FLAGS])
+])
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/libdispatch-changes/attachments/20091027/18b18e44/attachment.html>


More information about the libdispatch-changes mailing list