acinclude.m4
来自「ftgl-2.1.2 夸平台的opengl显示字体」· M4 代码 · 共 342 行
M4
342 行
dnl FTGL_PROG_CXX()dnl Check the build plataform and try to use the native compilerdnlAC_DEFUN(FTGL_PROG_CXX,[dnlAC_CANONICAL_BUILDAC_CANONICAL_HOSTdnl I really don't know how to handle the cross-compiling caseif test "$build" = "$host" ; then case "$build" in *-*-irix*) if test -z "$CXX" ; then CXX=CC fi if test -z "$CC" ; then CC=cc fi if test x$CXX = xCC -a -z "$CXXFLAGS" ; then # It might be worthwhile to move this out of here, say # EXTRA_CXXFLAGS. Forcing -n32 might cause trouble, too. CXXFLAGS="-LANG:std -n32 -woff 1201 -O3" fi ;; esacfiAC_PROG_CXX])# Configure paths for FreeType2# Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylordnl AC_CHECK_FT2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])dnl Test for FreeType2, and define FT2_CFLAGS and FT2_LIBSdnlAC_DEFUN(AC_CHECK_FT2,[dnldnl Get the cflags and libraries from the freetype-config scriptdnlAC_ARG_WITH(freetype-prefix,[ --with-ft-prefix=PFX Prefix where FreeType is installed (optional)], ft_config_prefix="$withval", ft_config_prefix="")AC_ARG_WITH(freetype-exec-prefix,[ --with-ft-exec-prefix=PFX Exec prefix where FreeType is installed (optional)], ft_config_exec_prefix="$withval", ft_config_exec_prefix="")AC_ARG_ENABLE(freetypetest, [ --disable-freetypetest Do not try to compile and run a test FreeType program],[], enable_fttest=yes)if test x$ft_config_exec_prefix != x ; then ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix" if test x${FT2_CONFIG+set} != xset ; then FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config fifiif test x$ft_config_prefix != x ; then ft_config_args="$ft_config_args --prefix=$ft_config_prefix" if test x${FT2_CONFIG+set} != xset ; then FT2_CONFIG=$ft_config_prefix/bin/freetype-config fifiAC_PATH_PROG(FT2_CONFIG, freetype-config, no)min_ft_version=ifelse([$1], ,6.1.0,$1)AC_MSG_CHECKING(for FreeType - version >= $min_ft_version)no_ft=""if test "$FT2_CONFIG" = "no" ; then no_ft=yeselse FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags` FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs` ft_config_version=`$FT2_CONFIG $ft_config_args --version` ft_config_major_version=`echo $ft_config_version | cut -d . -f 1` ft_config_minor_version=`echo $ft_config_version | cut -d . -f 2` ft_config_micro_version=`echo $ft_config_version | cut -d . -f 3` ft_min_major_version=`echo $min_ft_version | cut -d . -f 1` ft_min_minor_version=`echo $min_ft_version | cut -d . -f 2` ft_min_micro_version=`echo $min_ft_version | cut -d . -f 3` if test "x$enable_fttest" = "xyes" ; then ft_config_version=`expr $ft_config_major_version \* 10000 + $ft_config_minor_version \* 100 + $ft_config_micro_version` ft_min_version=`expr $ft_min_major_version \* 10000 + $ft_min_minor_version \* 100 + $ft_min_micro_version` if test $ft_config_version -lt $ft_min_version ; then ifelse([$3], , :, [$3]) else ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $FT2_CFLAGS" LIBS="$FT2_LIBS $LIBS"dnldnl Sanity checks the results of freetype-config to some extentdnl AC_TRY_RUN([#include <ft2build.h>#include FT_FREETYPE_H#include <stdio.h>#include <stdlib.h>int main (){ FT_Library library; FT_Error error; error = FT_Init_FreeType( &library ); if ( error ) { return 1; } else { FT_Done_FreeType( library ); return 0; }}],, no_ft=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi # test $ft_config_version -lt $ft_min_version fi # test "x$enable_fttest" = "xyes"fi # test "$FT2_CONFIG" = "no"if test "x$no_ft" = x ; then AC_MSG_RESULT(yes) ifelse([$2], , :, [$2]) else AC_MSG_RESULT(no) if test "$FT2_CONFIG" = "no" ; then echo "*** The freetype-config script installed by FT2 could not be found" echo "*** If FT2 was installed in PREFIX, make sure PREFIX/bin is in" echo "*** your path, or set the FT2_CONFIG environment variable to the" echo "*** full path to freetype-config." else echo "*** The FreeType test program failed to run. If your system uses" echo "*** shared libraries and they are installed outside the normal" echo "*** system library path, make sure the variable LD_LIBRARY_PATH" echo "*** (or whatever is appropiate for your system) is correctly set." fi FT2_CFLAGS="" FT2_LIBS="" ifelse([$3], , :, [$3])fiAC_SUBST(FT2_CFLAGS)AC_SUBST(FT2_LIBS)])dnl FTGL_CHECK_GL()dnl Check for OpenGL development environment and GLU >= 1.2dnlAC_DEFUN([FTGL_CHECK_GL],[dnlAC_REQUIRE([AC_PROG_CC])AC_REQUIRE([AC_PATH_X])AC_REQUIRE([AC_PATH_XTRA])AC_ARG_WITH([--with-gl-inc], AC_HELP_STRING([--with-gl-inc=DIR],[Directory where GL/gl.h is installed]))AC_ARG_WITH([--with-gl-lib], AC_HELP_STRING([--with-gl-lib=DIR],[Directory where OpenGL libraries are installed]))AC_LANG_SAVEAC_LANG_CGL_SAVE_CPPFLAGS="$CPPFLAGS"GL_SAVE_LIBS="$LIBS"if test "x$no_x" != xyes ; then GL_CFLAGS="$X_CFLAGS" GL_X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu $X_EXTRA_LIBS"fiif test "x$with_gl_inc" != "xnone" ; then if test -d "$with_gl_inc" ; then GL_CFLAGS="-I$with_gl_inc" else GL_CFLAGS="$with_gl_inc" fielse GL_CFLAGS=fiCPPFLAGS="$GL_CFLAGS"AC_CHECK_HEADER([GL/gl.h], [], [AC_MSG_ERROR(GL/gl.h is needed, please specify its location with --with-gl-inc. If this still fails, please contact mmagallo@debian.org, include the string FTGL somewhere in the subject line and provide a copy of the config.log file that was left behind.)])AC_MSG_CHECKING([for GL library])if test "x$with_gl_lib" != "x" ; then if test -d "$with_gl_lib" ; then LIBS="-L$with_gl_lib -lGL" else LIBS="$with_gl_lib" fielse LIBS="-lGL"fiAC_LINK_IFELSE([AC_LANG_CALL([],[glBegin])],[HAVE_GL=yes], [HAVE_GL=no])if test "x$HAVE_GL" = xno ; then if test "x$GL_X_LIBS" != x ; then LIBS="-lGL $GL_X_LIBS" AC_LINK_IFELSE([AC_LANG_CALL([],[glBegin])],[HAVE_GL=yes], [HAVE_GL=no]) fifiif test "x$HAVE_GL" = xyes ; then AC_MSG_RESULT([yes]) GL_LIBS=$LIBSelse AC_MSG_RESULT([no]) AC_MSG_ERROR([GL library could not be found, please specify its location with --with-gl-lib. If this still fails, please contact mmagallo@debian.org, include the string FTGL somewhere in the subject line and provide a copy of the config.log file that was left behind.])fiAC_CHECK_HEADER([GL/glu.h])AC_MSG_CHECKING([for GLU version >= 1.2])AC_TRY_COMPILE([#include <GL/glu.h>], [#if !defined(GLU_VERSION_1_2)#error GLU too old#endif ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) AC_MSG_ERROR([GLU >= 1.2 is needed to compile this library]) ])AC_MSG_CHECKING([for GLU library])LIBS="-lGLU $GL_LIBS"AC_LINK_IFELSE([AC_LANG_CALL([],[gluNewTess])],[HAVE_GLU=yes], [HAVE_GLU=no])if test "x$HAVE_GLU" = xno ; then if test "x$GL_X_LIBS" != x ; then LIBS="-lGLU $GL_LIBS $GL_X_LIBS" AC_LINK_IFELSE([AC_LANG_CALL([],[gluNewTess])],[HAVE_GLU=yes], [HAVE_GLU=no]) fifiif test "x$HAVE_GLU" = xyes ; then AC_MSG_RESULT([yes]) GL_LIBS="$LIBS"else AC_MSG_RESULT([no]) AC_MSG_ERROR([GLU library could not be found, please specify its location with --with-gl-lib. If this still fails, please contact mmagallo@debian.org, include the string FTGL somewhere in the subject line and provide a copy of the config.log file that was left behind.])fiAC_SUBST(GL_CFLAGS)AC_SUBST(GL_LIBS)CPPFLAGS="$GL_SAVE_CPPFLAGS"LIBS="$GL_SAVE_LIBS"AC_LANG_RESTOREGL_X_LIBS=""])dnl FTGL_CHECK_GLUT()dnl Check for GLUT development environmentdnlAC_DEFUN([FTGL_CHECK_GLUT],[dnlAC_REQUIRE([AC_PROG_CC])dnlAC_REQUIRE([AC_PATH_X])dnlAC_REQUIRE([AC_PATH_XTRA])dnlAC_REQUIRE([FTGL_CHECK_GL])dnlAC_ARG_WITH([--with-glut-inc], AC_HELP_STRING([--with-glut-inc=DIR],[Directory where GL/glut.h is installed (optional)]))AC_ARG_WITH([--with-glut-lib], AC_HELP_STRING([--with-glut-lib=DIR],[Directory where GLUT libraries are installed (optional)]))AC_LANG_SAVEAC_LANG_CGLUT_SAVE_CPPFLAGS="$CPPFLAGS"GLUT_SAVE_LIBS="$LIBS"if test "x$no_x" != xyes ; then GLUT_CFLAGS="$X_CFLAGS" GLUT_X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu $X_EXTRA_LIBS"fiif test "x$with_glut_inc" != "xnone" ; then if test -d "$with_glut_inc" ; then GLUT_CFLAGS="-I$with_glut_inc" else GLUT_CFLAGS="$with_glut_inc" fielse GLUT_CFLAGS=fiCPPFLAGS="$GLUT_CFLAGS"AC_CHECK_HEADER([GL/glut.h], [HAVE_GLUT=yes], [HAVE_GLUT=no])if test "x$HAVE_GLUT" = xno ; then AC_MSG_WARN([GLUT headers not availabe, example program won't be compiled.])else# Check for GLUT libraries AC_MSG_CHECKING([for GLUT library]) if test "x$with_glut_lib" != "x" ; then if test -d "$with_glut_lib" ; then LIBS="-L$with_glut_lib -lglut" else LIBS="$with_glut_lib" fi else LIBS="-lglut" fi AC_LINK_IFELSE( [AC_LANG_CALL([],[glutInit])], [HAVE_GLUT=yes], [HAVE_GLUT=no]) if test "x$HAVE_GLUT" = xno ; then # Try again with the GL libs LIBS="-lglut $GL_LIBS" AC_LINK_IFELSE( [AC_LANG_CALL([],[glutInit])], [HAVE_GLUT=yes], [HAVE_GLUT=no]) fi if test "x$HAVE_GLUT" = xno && test "x$GLUT_X_LIBS" != x ; then # Try again with the GL and X11 libs LIBS="-lglut $GL_LIBS $GLUT_X_LIBS" AC_LINK_IFELSE( [AC_LANG_CALL([],[glutInit])], [HAVE_GLUT=yes], [HAVE_GLUT=no]) fi if test "x$HAVE_GLUT" = xyes ; then AC_MSG_RESULT([yes]) GLUT_LIBS=$LIBS else AC_MSG_RESULT([no]) AC_MSG_WARN([GLUT libraries not availabe, example program won't be compiled.]) fi# End check for GLUT librariesfiAC_SUBST(HAVE_GLUT)AC_SUBST(GLUT_CFLAGS)AC_SUBST(GLUT_LIBS)AC_LANG_RESTORECPPFLAGS="$GLUT_SAVE_CPPFLAGS"LIBS="$GLUT_SAVE_LIBS"GLUT_X_CFLAGS=GLUT_X_LIBS=])
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?