You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

161 lines
5.2KB

  1. dnl Process this file with autoconf to produce a configure script.
  2. AC_INIT(SpiralSynthModular.C)
  3. dnl Checks for programs.
  4. AC_PROG_CC
  5. AC_PROG_CPP
  6. AC_PROG_INSTALL
  7. dnl Checks for header files.
  8. AC_HEADER_STDC
  9. dnl Checks for typedefs, structures, and compiler characteristics.
  10. AC_C_CONST
  11. AC_C_INLINE
  12. dnl Check plugin directory
  13. AC_ARG_WITH(plugindir,
  14. [ --with-plugindir=dir give the plugin directory],
  15. plugindir="$withval",
  16. plugindir="/usr/lib/SpiralPlugins")
  17. AC_SUBST(PLUGINDIR, $plugindir)
  18. dnl Check whether to enable debugging
  19. AC_ARG_ENABLE(debug, [ --enable-debug enable debugging ],
  20. ac_arg_debug="Y", ac_arg_debug="N")
  21. if test $ac_arg_debug = "Y" ; then
  22. CFLAGS="-pipe -Wall -O0 -ggdb "
  23. CXXFLAGS="-pipe -Wall -O0 -ggdb "
  24. else
  25. CFLAGS="-pipe -Wall -O3 -ffast-math -DNO_DEBUG -Wno-unused "
  26. CXXFLAGS="-pipe -Wall -O3 -ffast-math -DNO_DEBUG -Wno-unused "
  27. fi
  28. echo "$PLUGINLIST" > SpiralSound/PluginList.txt
  29. AC_ARG_ENABLE(jack, [ --enable-jack build JackPlugin ],
  30. ac_arg_jack="Y", ac_arg_jack="N")
  31. if test $ac_arg_jack = "Y" ; then
  32. PLUGINLIST="AmpPlugin ControllerPlugin DelayPlugin EchoPlugin EnvFollowerPlugin \
  33. EnvelopePlugin FilterPlugin MatrixPlugin MidiPlugin MixerPlugin MoogFilterPlugin \
  34. NoteSnapPlugin OscillatorPlugin OutputPlugin RingModPlugin SVFilterPlugin \
  35. SampleHoldPlugin SamplerPlugin ScopePlugin SeqPlugin SmoothPlugin SplitterPlugin \
  36. StereoMixerPlugin WaveTablePlugin SeqSelectorPlugin LADSPAPlugin WaveShaperPlugin \
  37. StreamPlugin XFadePlugin SpiralLoopPlugin JackPlugin PoshSamplerPlugin \
  38. ComplexEnvelopePlugin DistributorPlugin JoystickPlugin LFOPlugin MeterPlugin"
  39. else
  40. PLUGINLIST="AmpPlugin ControllerPlugin DelayPlugin EchoPlugin EnvFollowerPlugin \
  41. EnvelopePlugin FilterPlugin MatrixPlugin MidiPlugin MixerPlugin MoogFilterPlugin \
  42. NoteSnapPlugin OscillatorPlugin OutputPlugin RingModPlugin SVFilterPlugin \
  43. SampleHoldPlugin SamplerPlugin ScopePlugin SeqPlugin SmoothPlugin SplitterPlugin \
  44. StereoMixerPlugin WaveTablePlugin SeqSelectorPlugin LADSPAPlugin WaveShaperPlugin \
  45. StreamPlugin XFadePlugin SpiralLoopPlugin PoshSamplerPlugin ComplexEnvelopePlugin \
  46. DistributorPlugin JoystickPlugin LFOPlugin MeterPlugin"
  47. fi
  48. echo "$PLUGINLIST" > SpiralSound/PluginList.txt
  49. dnl Checks for library functions.
  50. AC_CHECK_HEADERS(math.h)
  51. AC_CHECK_LIB(m, sin)
  52. dnl AC_CHECK_HEADERS(X11/Xlib.h)
  53. dnl AC_CHECK_LIB(X11, XDisplayName)
  54. dnl AC_CHECK_LIB(Xext, main)
  55. AC_PATH_PROG(FLTK_CONFIG, fltk-config, no)
  56. if test "$FLTK_CONFIG" = "no"; then
  57. AC_PATH_XTRA
  58. LIBGL=""
  59. CPPFLAGS="$CPPFLAGS $X_CFLAGS"
  60. AC_CHECK_HEADERS(GL/gl.h)
  61. if test $ac_cv_header_GL_gl_h = "yes" ; then
  62. AC_CHECK_LIB(GL, glBegin, LIBGL="-lGL")
  63. fi
  64. AC_CHECK_HEADERS(FL/Fl.h)
  65. if test $ac_cv_header_FL_Fl_h = "no" ; then
  66. echo "*** FLTK headers missing."
  67. exit 1
  68. fi
  69. AC_CHECK_LIB(fltk, main)
  70. FLTK_CXXFLAGS="$X_CFLAGS"
  71. FLTK_CFLAGS="$FLTK_CXXFLAGS"
  72. FLTK_LIBS="$X_LIBS -lfltk $LIBGL"
  73. else
  74. FLTK_CXXFLAGS=`$FLTK_CONFIG $fltk_config_args --cxxflags`
  75. FLTK_CFLAGS=`$FLTK_CONFIG $fltk_config_args --cxxflags`
  76. FLTK_LIBS=`$FLTK_CONFIG $fltk_config_args --ldflags`
  77. fi
  78. AC_SUBST(FLTK_CXXFLAGS)
  79. AC_SUBST(FLTK_CFLAGS)
  80. AC_SUBST(FLTK_LIBS)
  81. if test $ac_arg_jack = "Y" ; then
  82. AM_PATH_GLIB(1.2.0,,AC_MSG_ERROR([*** GLIB >= 1.2.0 not installed]))
  83. fi
  84. AC_CHECK_HEADERS(dlfcn.h)
  85. AC_CHECK_LIB(dl, dlopen)
  86. AC_CHECK_HEADERS(png.h)
  87. AC_CHECK_LIB(png, png_get_copyright)
  88. dnl This is normally done with libtool but since we aren't using libtool
  89. dnl yet to it here.
  90. dnl FIXME: forced to add -fPIC here..
  91. CFLAGS="$CFLAGS -fPIC"
  92. CXXFLAGS="$CFLAGS -fPIC"
  93. AC_SUBST(CFLAGS)
  94. AC_SUBST(CXXFLAGS)
  95. AC_SUBST(PLUGINLIST)
  96. dnl Modify the output files.
  97. AC_OUTPUT(
  98. SpiralSynthPluginLocation.h
  99. SpiralSound/Plugins/AmpPlugin/Makefile
  100. SpiralSound/Plugins/ControllerPlugin/Makefile
  101. SpiralSound/Plugins/DelayPlugin/Makefile
  102. SpiralSound/Plugins/EchoPlugin/Makefile
  103. SpiralSound/Plugins/EnvFollowerPlugin/Makefile
  104. SpiralSound/Plugins/EnvelopePlugin/Makefile
  105. SpiralSound/Plugins/FilterPlugin/Makefile
  106. SpiralSound/Plugins/MatrixPlugin/Makefile
  107. SpiralSound/Plugins/MidiPlugin/Makefile
  108. SpiralSound/Plugins/MixerPlugin/Makefile
  109. SpiralSound/Plugins/MoogFilterPlugin/Makefile
  110. SpiralSound/Plugins/NoteSnapPlugin/Makefile
  111. SpiralSound/Plugins/OscillatorPlugin/Makefile
  112. SpiralSound/Plugins/OutputPlugin/Makefile
  113. SpiralSound/Plugins/RingModPlugin/Makefile
  114. SpiralSound/Plugins/SVFilterPlugin/Makefile
  115. SpiralSound/Plugins/SampleHoldPlugin/Makefile
  116. SpiralSound/Plugins/SamplerPlugin/Makefile
  117. SpiralSound/Plugins/ScopePlugin/Makefile
  118. SpiralSound/Plugins/SeqPlugin/Makefile
  119. SpiralSound/Plugins/SeqSelectorPlugin/Makefile
  120. SpiralSound/Plugins/SmoothPlugin/Makefile
  121. SpiralSound/Plugins/SplitterPlugin/Makefile
  122. SpiralSound/Plugins/StereoMixerPlugin/Makefile
  123. SpiralSound/Plugins/WaveTablePlugin/Makefile
  124. SpiralSound/Plugins/LADSPAPlugin/Makefile
  125. SpiralSound/Plugins/WaveShaperPlugin/Makefile
  126. SpiralSound/Plugins/StreamPlugin/Makefile
  127. SpiralSound/Plugins/XFadePlugin/Makefile
  128. SpiralSound/Plugins/SpiralLoopPlugin/Makefile
  129. SpiralSound/Plugins/JackPlugin/Makefile
  130. SpiralSound/Plugins/ComplexEnvelopePlugin/Makefile
  131. SpiralSound/Plugins/PoshSamplerPlugin/Makefile
  132. SpiralSound/Plugins/DistributorPlugin/Makefile
  133. SpiralSound/Plugins/JoystickPlugin/Makefile
  134. SpiralSound/Plugins/LFOPlugin/Makefile
  135. SpiralSound/Plugins/MeterPlugin/Makefile
  136. Makefile
  137. )