summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--m4/as-objc.m454
2 files changed, 58 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 64fb047..b1e9b7c 100644
--- 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
index 0000000..6773aaf
--- /dev/null
+++ b/m4/as-objc.m4
@@ -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
+
+])
+
+