was run, while they are needed also when it is expanded.
Reported by Nicolas Joly.
* aclang.m4 (AC_F77_DUMMY_MAIN): Define _AC_LANG_PROGRAM_C_F77_HOOKS.
(AC_LANG_PROGRAM(C)): Use it instead of depending upon
AC_F77_DUMMY_MAIN being expanded.
+2001-07-18 Akim Demaille <akim@epita.fr>
+
+ The C-Fortran 77 hooks are available only once AC_F77_DUMMY_MAIN
+ was run, while they are needed also when it is expanded.
+ Reported by Nicolas Joly.
+
+ * aclang.m4 (AC_F77_DUMMY_MAIN): Define _AC_LANG_PROGRAM_C_F77_HOOKS.
+ (AC_LANG_PROGRAM(C)): Use it instead of depending upon
+ AC_F77_DUMMY_MAIN being expanded.
+
2001-07-18 Akim Demaille <akim@epita.fr>
* configure.in: Bump to 2.51a.
# against Fortran code, hence a dummy main might be needed.
m4_define([AC_LANG_PROGRAM(C)],
[$1
-m4_provide_ifelse([AC_F77_DUMMY_MAIN],
-[#ifdef F77_DUMMY_MAIN
-# ifdef __cplusplus
- extern "C"
-# endif
- int F77_DUMMY_MAIN() { return 1; }
-#endif
-])dnl
+m4_ifdef([_AC_LANG_PROGRAM_C_F77_HOOKS], [_AC_LANG_PROGRAM_C_F77_HOOKS()])dnl
int
main ()
{
# MAIN _MAIN __MAIN main_ main__ _main (we follow DDD and try these too)
AC_DEFUN([AC_F77_DUMMY_MAIN],
[AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS])dnl
+m4_define([_AC_LANG_PROGRAM_C_F77_HOOKS],
+[#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+])
AC_CACHE_CHECK([for dummy main to link with Fortran 77 libraries],
ac_cv_f77_dummy_main,
[AC_LANG_PUSH(C)dnl
# against Fortran code, hence a dummy main might be needed.
m4_define([AC_LANG_PROGRAM(C)],
[$1
-m4_provide_ifelse([AC_F77_DUMMY_MAIN],
-[#ifdef F77_DUMMY_MAIN
-# ifdef __cplusplus
- extern "C"
-# endif
- int F77_DUMMY_MAIN() { return 1; }
-#endif
-])dnl
+m4_ifdef([_AC_LANG_PROGRAM_C_F77_HOOKS], [_AC_LANG_PROGRAM_C_F77_HOOKS()])dnl
int
main ()
{
# MAIN _MAIN __MAIN main_ main__ _main (we follow DDD and try these too)
AC_DEFUN([AC_F77_DUMMY_MAIN],
[AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS])dnl
+m4_define([_AC_LANG_PROGRAM_C_F77_HOOKS],
+[#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+])
AC_CACHE_CHECK([for dummy main to link with Fortran 77 libraries],
ac_cv_f77_dummy_main,
[AC_LANG_PUSH(C)dnl
# against Fortran code, hence a dummy main might be needed.
m4_define([AC_LANG_PROGRAM(C)],
[$1
-m4_provide_ifelse([AC_F77_DUMMY_MAIN],
-[#ifdef F77_DUMMY_MAIN
-# ifdef __cplusplus
- extern "C"
-# endif
- int F77_DUMMY_MAIN() { return 1; }
-#endif
-])dnl
+m4_ifdef([_AC_LANG_PROGRAM_C_F77_HOOKS], [_AC_LANG_PROGRAM_C_F77_HOOKS()])dnl
int
main ()
{
# MAIN _MAIN __MAIN main_ main__ _main (we follow DDD and try these too)
AC_DEFUN([AC_F77_DUMMY_MAIN],
[AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS])dnl
+m4_define([_AC_LANG_PROGRAM_C_F77_HOOKS],
+[#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+])
AC_CACHE_CHECK([for dummy main to link with Fortran 77 libraries],
ac_cv_f77_dummy_main,
[AC_LANG_PUSH(C)dnl
# against Fortran code, hence a dummy main might be needed.
m4_define([AC_LANG_PROGRAM(C)],
[$1
-m4_provide_ifelse([AC_F77_DUMMY_MAIN],
-[#ifdef F77_DUMMY_MAIN
-# ifdef __cplusplus
- extern "C"
-# endif
- int F77_DUMMY_MAIN() { return 1; }
-#endif
-])dnl
+m4_ifdef([_AC_LANG_PROGRAM_C_F77_HOOKS], [_AC_LANG_PROGRAM_C_F77_HOOKS()])dnl
int
main ()
{
# MAIN _MAIN __MAIN main_ main__ _main (we follow DDD and try these too)
AC_DEFUN([AC_F77_DUMMY_MAIN],
[AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS])dnl
+m4_define([_AC_LANG_PROGRAM_C_F77_HOOKS],
+[#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+])
AC_CACHE_CHECK([for dummy main to link with Fortran 77 libraries],
ac_cv_f77_dummy_main,
[AC_LANG_PUSH(C)dnl
[$3])])
-# ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED])
+# m4_ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED])
# -----------------------------------------------
m4_define([m4_ifndef],
[m4_ifdef([$1], [$3], [$2])])
[$3])])
-# ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED])
+# m4_ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED])
# -----------------------------------------------
m4_define([m4_ifndef],
[m4_ifdef([$1], [$3], [$2])])