comparison aclocal.m4 @ 4192:5719210fff4c

[project @ 2002-11-20 16:56:47 by jwe]
author jwe
date Wed, 20 Nov 2002 16:56:49 +0000
parents bcdf1c264e08
children 1d7180ab9df1
comparison
equal deleted inserted replaced
4191:989f9e130969 4192:5719210fff4c
351 AC_MSG_RESULT(no) 351 AC_MSG_RESULT(no)
352 ifelse([$3], , , [$3]) 352 ifelse([$3], , , [$3])
353 fi 353 fi
354 ]) 354 ])
355 dnl 355 dnl
356 dnl
357 dnl
358 dnl OCTAVE_LANG_PROG_NO_CONFDEFS
359 AC_DEFUN(OCTAVE_LANG_PROG_NO_CONFDEFS,
360 [_AC_LANG_DISPATCH([AC_LANG_PROGRAM], _AC_LANG, [$@])])
361 dnl
362 dnl Check to see if GNU C++ barfs on #pragma interface/#pragma implementation.
363 dnl
364 dnl Note that we are using AC_LINK_IFELSE and OCTAVE_LANG_PROG_NO_CONFDEFS
365 dnl to prevent autoconf from including confdefs.h ahead of the #pragma
366 dnl interface/implementation line.
367 dnl
368 dnl OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION
369 AC_DEFUN(OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION, [
370 AC_REQUIRE([AC_PROG_CXX])
371 AC_MSG_CHECKING([for C++ support for pragma interface/implementation])
372 AC_CACHE_VAL(octave_cv_cxx_pragma_interface_implementation, [
373 AC_LANG_PUSH(C++)
374 rm -f conftest.h
375 cat > conftest.h <<EOB
376 #include <iostream>
377 #pragma interface
378 template <class T> class A
379 {
380 public:
381 A (void) {}
382 ~A (void);
383 };
384
385 class B : public A<int>
386 {
387 public:
388
389 B (void) : A<int> () { }
390 };
391 EOB
392 AC_LINK_IFELSE([OCTAVE_LANG_PROG_NO_CONFDEFS([#include "conftest.h"])],
393 [octave_pii_test_1=yes], [octave_pii_test_1=no])
394 rm -f conftest.h
395 cat > conftest.h <<EOB
396 #pragma interface
397 class A
398 {
399 public:
400 virtual ~A (void) {}
401 };
402 EOB
403 AC_LINK_IFELSE([OCTAVE_LANG_PROG_NO_CONFDEFS([#pragma implementation
404 #include "conftest.h"])],
405 [octave_pii_test_2=yes], [octave_pii_test_2=no])
406 if test $octave_pii_test_1 = yes && test $octave_pii_test_2 = yes; then
407 octave_cv_cxx_pragma_interface_implementation=yes
408 else
409 octave_cv_cxx_pragma_interface_implementation=no
410 fi
411 AC_LANG_POP(C++)
412 ])
413 AC_MSG_RESULT($octave_cv_cxx_pragma_interface_implementation)
414 if test $octave_cv_cxx_pragma_interface_implementation = no; then
415 XTRA_CXXFLAGS="$XTRA_CXXFLAGS -DNO_PRAGMA_INTERFACE_IMPLEMENTATION=1"
416 AC_SUBST(XTRA_CXXFLAGS)
417 fi
418 ])
419 dnl
420 dnl Check for flex 356 dnl Check for flex
421 dnl 357 dnl
422 AC_DEFUN(OCTAVE_PROG_FLEX, [ 358 AC_DEFUN(OCTAVE_PROG_FLEX, [
423 ### For now, don't define LEXLIB to be -lfl -- we don't use anything in 359 ### For now, don't define LEXLIB to be -lfl -- we don't use anything in
424 ### it, and it might not be installed. 360 ### it, and it might not be installed.