home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.7z / ftp.whtech.com / emulators / v9t9 / linux / sources / V9t9 / source / configure.in < prev    next >
Encoding:
Text File  |  2006-10-19  |  5.1 KB  |  208 lines

  1. dnl Process this file with autoconf to produce a configure script.
  2. AC_INIT(16bit.h)
  3. AC_CONFIG_HEADER(conf.h)
  4.  
  5. AC_PROG_MWCC
  6. MAPFLAGS="-Wl,-cref -Wl,-Map -Wl,@OUTFILE@.map"
  7. ARFLAGS="rcsu"
  8. DEPFLAGS="-MD"
  9.  
  10. dnl Checks for programs.
  11. AC_PROG_CC
  12. if test "$LD" = ""; then
  13. LD=$CC
  14. fi
  15. AC_PROG_YACC
  16. AC_PROG_LEX
  17. AC_PROG_MAKE_SET
  18. AC_MSG_CHECKING(perl)
  19. if perl -e print; then PERL=perl;
  20. elif /usr/bin/perl -e print; then PERL=/usr/bin/perl;
  21. elif /usr/local/bin/perl -e print; then PERL=/usr/local/bin/perl;
  22. else AC_MSG_ERROR(not found, you will need to hand-edit gtkcallbacks.c if you change v9t9.glade)
  23. PERL=true
  24. fi
  25. if test "$PERL" != ""; then
  26. AC_MSG_RESULT($PERL)
  27. fi
  28. AC_SUBST(PERL)
  29.  
  30. dnl get top-level directory
  31. TOP=`pwd`
  32. AC_SUBST(TOP)
  33.  
  34. dnl typical modules
  35. MODSRCS="$MODSRCS video_null.c keyboard_null.c sound_null.c"
  36. MODSRCS="$MODSRCS dsr_emudisk.c dsr_realdisk.c dsr_rs232.c"
  37. AC_DEFINE(NULL_VIDEO)
  38. AC_DEFINE(NULL_KEYBOARD)
  39. AC_DEFINE(NULL_SOUND)
  40. AC_DEFINE(EMU_DISK_DSR)
  41. AC_DEFINE(REAL_DISK_DSR)
  42. AC_DEFINE(REAL_RS232_DSR)
  43.  
  44. dnl Check for host OS -- this is a generic check only
  45. AC_MSG_CHECKING(host operating system)
  46. HOSTOS=
  47.  
  48. AC_TRY_COMPILE(,[#if !defined(__unix__) && !defined(__unix)
  49. #error not unix
  50. #endif],
  51. AC_DEFINE(UNDER_UNIX)
  52. HOSTOS="Unix"
  53. SRCS="$SRCS unixmain.c"
  54. INCDIRS="$INCDIRS $TOP/Modules/Unix"
  55. OSLIBSRCS="$OSLIBSRCS Posix.c"
  56. LIBS="$LIBS -lpthread"
  57. UNIXMODSRCS="$UNIXMODSRCS dsr_rs232_unix.c"
  58. )
  59.  
  60. if test "$HOSTOS" = ""; then
  61. AC_TRY_COMPILE(,[#if !defined(_WIN32)
  62. #error not _WIN32
  63. #endif], 
  64. AC_DEFINE(UNDER_WIN32)
  65. AC_DEFINE(USE_MM_TIMER)
  66. AC_DEFINE(WIN32_VIDEO) AC_DEFINE(WIN32_KEYBOARD) 
  67. AC_DEFINE(WIN32_SOUND) AC_DEFINE(USE_MM_TIMER)
  68. HOSTOS="Win32"
  69. SRCS="$SRCS winmain.c"
  70. INCDIRS="$INCDIRS $TOP/source/Modules/Win32"
  71. OSLIBSRCS="$OSLIBSRCS Win32.c"
  72. UNIXMODSRCS="$UNIXMODSRCS dsr_rs232_win32.c"
  73. )
  74. fi
  75.  
  76. if test "$HOSTOS" = ""; then
  77. AC_TRY_COMPILE(,[#if !defined(macintosh)
  78. #error not macintosh
  79. #endif], 
  80. AC_DEFINE(UNDER_MACOS)
  81. HOSTOS="MacOs"
  82. SRCS="$SRCS macosmain.c"
  83. INCDIRS="$INCDIRS $TOP/source/Modules/MacOS"
  84. OSLIBSRCS="$OSLIBSRCS MacOS.c"
  85. )
  86. AC_MSG_ERROR(nothing is ported to MacOS yet, this is just a stub)
  87. fi
  88.  
  89. if test "$HOSTOS" = ""; then
  90. AC_MSG_ERROR(could not determine host operating system)
  91. fi
  92.  
  93. AC_SUBST(HOSTOS)
  94. AC_MSG_RESULT($HOSTOS)
  95.  
  96. dnl checks for OS features
  97. AC_CYGWIN
  98. AC_OBJEXT
  99. AC_SYS_LONG_FILE_NAMES
  100.  
  101. dnl Checks for libraries.
  102. AC_CHECK_LIB(readline, readline,
  103.     [LIBS="$LIBS -lreadline -ltermcap"; AC_DEFINE(HAVE_READLINE)],,-ltermcap)
  104. AC_CHECK_LIB(png, png_create_write_struct,
  105.     [LIBS="$LIBS -lpng -lz"; AC_DEFINE(WITH_LIB_PNG)],,-lz)
  106.  
  107. AC_CHECK_LIB(vga, vga_init, 
  108.     AC_DEFINE(LINUX_SVGA_VIDEO) AC_DEFINE(LINUX_SVGA_KEYBOARD)
  109.     LIBS="$LIBS -lvga"
  110.     SRCS="$SRCS svgaloop.c"
  111.     UNIXMODSRCS="$UNIXMODSRCS keyboard_svgalib.c video_svgalib.c")
  112. AC_CHECK_HEADERS(linux/soundcard.h, 
  113.     AC_DEFINE(OSS_SOUND)
  114.     UNIXMODSRCS="$UNIXMODSRCS sound_oss.c")
  115. AC_CHECK_HEADERS(sys/kd.h, 
  116.     AC_DEFINE(LINUX_SPEAKER_SOUND)
  117.     UNIXMODSRCS="$UNIXMODSRCS sound_speaker.c")
  118. AC_CHECK_HEADERS(esd.h,
  119.     AC_DEFINE(ESD_SOUND)
  120.     UNIXMODSRCS="$UNIXMODSRCS sound_esd.c"
  121.     LIBS="$LIBS -lesd")
  122.  
  123. AC_PATH_X
  124. if test "$no_x" = ""; then
  125. AC_DEFINE(X_WIN_VIDEO)
  126. AC_DEFINE(X_WIN_KEYBOARD)
  127. SRCS="$SRCS xlibloop.c"
  128. UNIXMODSRCS="$UNIXMODSRCS video_X.c keyboard_X.c"
  129. INCS="$INCS $x_includes"
  130. LIBS="$LIBS -L$x_libraries -lX11 -lXext -lXi"
  131. fi
  132.  
  133. if test '( "$HOSTOS" = "Unix" && "$no_x" = "" )' || test "$HOSTOS" = "Win32" ; then
  134. AC_CHECK_LIB(gtk, gtk_init,
  135. has_gtk=yes
  136. GTKSRCS="gtkloop.c gtkinterface.c gtksupport.c gtkcallbacks.c gtk_v99filesel.c"
  137. GTKMODSRCS="video_gtk.c keyboard_gtk.c"
  138. GTKLIBS="-lgtk -lgdk -lglib -lgmodule -ldl"
  139. ,,-lgdk -lglib)
  140.  
  141. AC_ARG_WITH(gtk,
  142. [  --with-gtk[=ARG]        use the GTK interface (ARG=yes)],
  143. [if test "$withval" = "yes"; then
  144. if test "$has_gtk" = "yes"; then
  145. AC_DEFINE(GTK_KEYBOARD) AC_DEFINE(GTK_VIDEO)
  146. SRCS="$SRCS $GTKSRCS" MODSRCS="$MODSRCS $GTKMODSRCS" LIBS="$LIBS $GTKLIBS"
  147. else
  148. AC_MSG_ERROR(GTK not found or not installed.)
  149. fi
  150. fi],
  151. [
  152. AC_DEFINE(GTK_KEYBOARD) AC_DEFINE(GTK_VIDEO)
  153. SRCS="$SRCS $GTKSRCS" MODSRCS="$MODSRCS $GTKMODSRCS" LIBS="$LIBS $GTKLIBS"
  154. ])
  155.  
  156. fi  # hostos==unix, hostos==win32
  157.  
  158. dnl Checks for header files.
  159. AC_HEADER_DIRENT
  160. AC_HEADER_STDC
  161. AC_HEADER_SYS_WAIT
  162. AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/ioctl.h sys/time.h unistd.h)
  163. dnl Checks for typedefs, structures, and compiler characteristics.
  164. AC_C_CONST
  165. AC_TYPE_PID_T
  166. AC_TYPE_SIZE_T
  167. AC_HEADER_TIME
  168. AC_STRUCT_TM
  169.  
  170. dnl Checks for library functions.
  171. AC_FUNC_ALLOCA
  172. AC_FUNC_FNMATCH
  173. AC_PROG_GCC_TRADITIONAL
  174. AC_FUNC_MEMCMP
  175. AC_TYPE_SIGNAL
  176. AC_FUNC_UTIME_NULL
  177. AC_FUNC_VPRINTF
  178. AC_CHECK_FUNCS(getcwd gethostname mkdir rmdir select strcspn strdup strerror strstr strtol strcasecmp strncasecmp strupr swab)
  179.  
  180. AC_SUBST(SRCS)
  181. AC_SUBST(INCDIRS)
  182. AC_SUBST(MODSRCS)
  183. AC_SUBST(UNIXMODSRCS)
  184. AC_SUBST(WINMODSRCS)
  185. AC_SUBST(MACMODSRCS)
  186. AC_SUBST(OSLIBSRCS)
  187.  
  188. dnl m4_include(compiler.in) ??? i thought this existed
  189.  
  190. ################
  191.  
  192. AC_SUBST(CC)
  193. AC_SUBST(LD)
  194. AC_SUBST(CFLAGS)
  195. AC_SUBST(LDFLAGS)
  196. AC_SUBST(LIBS)
  197. AC_SUBST(DEFS)
  198. AC_SUBST(DEPFLAGS)
  199. AC_SUBST(MAPFLAGS)
  200. AC_SUBST(ARFLAGS)
  201. ################
  202.  
  203. OUTFILE="$TOP/../bin/v9t9"
  204. AC_SUBST(OUTFILE)
  205.  
  206. AC_OUTPUT(Generate/Makefile OSLib/Makefile Modules/Makefile 
  207.     Modules/Unix/Makefile Modules/Win32/Makefile Makefile)
  208.