m4/as-objc.m4: Add a macro to test for objective C RELEASE-0_8_0 RELEASE-0_8_1
authorDavid Schleef <ds@schleef.org>
Tue, 13 Jul 2004 06:35:55 +0000 (06:35 +0000)
committerDavid Schleef <ds@schleef.org>
Tue, 13 Jul 2004 06:35:55 +0000 (06:35 +0000)
Original commit message from CVS:
* m4/as-objc.m4:  Add a macro to test for objective C

ChangeLog
m4/as-objc.m4 [new file with mode: 0644]

index 64fb047..b1e9b7c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-07-12  David Schleef  <ds@schleef.org>
+
+       * m4/as-objc.m4:  Add a macro to test for objective C
+
 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
 
        * m4/gst-feature.m4:
diff --git a/m4/as-objc.m4 b/m4/as-objc.m4
new file mode 100644 (file)
index 0000000..6773aaf
--- /dev/null
@@ -0,0 +1,54 @@
+
+
+# AC_PROG_OBJC([LIST-OF-COMPILERS])
+#
+AC_DEFUN([AS_PROG_OBJC],
+[
+AC_CHECK_TOOLS(OBJC,
+       [m4_default([$1], [objcc objc gcc cc CC])],
+       none)
+AC_SUBST(OBJC)
+OBJC_LDFLAGS="-lobjc"
+AC_SUBST(OBJC_LDFLAGS)
+if test "x$OBJC" != xnone ; then
+  _AM_DEPENDENCIES(OBJC)
+  AC_MSG_CHECKING([if Objective C compiler works])
+  cat >>conftest.m <<EOF
+#include <objc/Object.h>
+@interface Moo:Object
+{
+}
+- moo;
+int main();
+@end
+
+@implementation Moo
+- moo
+{
+  exit(0);
+}
+
+int main()
+{
+  id moo;
+  moo = [[Moo new]];
+  [[moo moo]];
+  return 1;
+}
+@end
+EOF
+  ${OBJC} conftest.m ${OBJC_LDFLAGS} >&5 2>&5
+  if test -f a.out -o -f a.exe ; then
+    result=yes
+  else
+    result=no
+    echo failed program is: >&5
+    cat conftest.m >&5
+  fi
+  rm -f conftest.m a.out a.exe
+  AC_MSG_RESULT([$result])
+fi
+
+])
+
+