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.

182 lines
6.3KB

  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 ScopePlugin SmoothPlugin SplitterPlugin StereoMixerPlugin StreamPlugin\
  36. WaveTablePlugin LADSPAPlugin XFadePlugin PoshSamplerPlugin SeqSelectorPlugin\
  37. DistributorPlugin LFOPlugin KeyboardPlugin DiskWriterPlugin FormantFilterPlugin \
  38. AnotherFilterPlugin OperatorPlugin CounterPlugin FlipflopPlugin SwitchPlugin \
  39. BeatMatchPlugin NoisePlugin SequencerPlugin LogicPlugin SplitSwitchPlugin \
  40. MixSwitchPlugin MeterPlugin WaveShaperPlugin TrigPlugin SpiralLoopPlugin \
  41. MasherPlugin JackPlugin"
  42. else
  43. PLUGINLIST="AmpPlugin ControllerPlugin DelayPlugin EchoPlugin EnvFollowerPlugin \
  44. EnvelopePlugin FilterPlugin MatrixPlugin MidiPlugin MixerPlugin MoogFilterPlugin \
  45. NoteSnapPlugin OscillatorPlugin OutputPlugin RingModPlugin SVFilterPlugin \
  46. SampleHoldPlugin ScopePlugin SmoothPlugin SplitterPlugin StereoMixerPlugin StreamPlugin\
  47. WaveTablePlugin LADSPAPlugin XFadePlugin PoshSamplerPlugin SeqSelectorPlugin\
  48. DistributorPlugin LFOPlugin KeyboardPlugin DiskWriterPlugin FormantFilterPlugin \
  49. AnotherFilterPlugin OperatorPlugin CounterPlugin FlipflopPlugin SwitchPlugin \
  50. BeatMatchPlugin NoisePlugin SequencerPlugin LogicPlugin SplitSwitchPlugin \
  51. MixSwitchPlugin MeterPlugin WaveShaperPlugin TrigPlugin SpiralLoopPlugin \
  52. MasherPlugin"
  53. fi
  54. echo "$PLUGINLIST" > SpiralSound/PluginList.txt
  55. dnl Checks for library functions.
  56. AC_CHECK_HEADERS(math.h)
  57. AC_CHECK_LIB(m, sin)
  58. dnl AC_CHECK_HEADERS(X11/Xlib.h)
  59. dnl AC_CHECK_LIB(X11, XDisplayName)
  60. dnl AC_CHECK_LIB(Xext, main)
  61. AC_PATH_PROG(FLTK_CONFIG, fltk-config, no)
  62. if test "$FLTK_CONFIG" = "no"; then
  63. AC_PATH_XTRA
  64. LIBGL=""
  65. CPPFLAGS="$CPPFLAGS $X_CFLAGS"
  66. AC_CHECK_HEADERS(GL/gl.h)
  67. if test $ac_cv_header_GL_gl_h = "yes" ; then
  68. AC_CHECK_LIB(GL, glBegin, LIBGL="-lGL")
  69. fi
  70. AC_CHECK_HEADERS(FL/Fl.h)
  71. if test $ac_cv_header_FL_Fl_h = "no" ; then
  72. echo "*** FLTK headers missing."
  73. exit 1
  74. fi
  75. AC_CHECK_LIB(fltk, main)
  76. FLTK_CXXFLAGS="$X_CFLAGS"
  77. FLTK_CFLAGS="$FLTK_CXXFLAGS"
  78. FLTK_LIBS="$X_LIBS -lfltk $LIBGL"
  79. else
  80. FLTK_CXXFLAGS=`$FLTK_CONFIG $fltk_config_args --cxxflags`
  81. FLTK_CFLAGS=`$FLTK_CONFIG $fltk_config_args --cxxflags`
  82. FLTK_LIBS=`$FLTK_CONFIG $fltk_config_args --ldflags`
  83. dnl This caused problems for debian users,
  84. dnl It would be nice to find a more robust way of doing it.
  85. dnl if test "${FLTK_LIBS/*-rpath*/yes}" != "yes"; then
  86. dnl echo "*** FLTK needs to be configured with --enable-shared"
  87. dnl exit 1
  88. dnl fi
  89. fi
  90. AC_SUBST(FLTK_CXXFLAGS)
  91. AC_SUBST(FLTK_CFLAGS)
  92. AC_SUBST(FLTK_LIBS)
  93. AC_CHECK_HEADERS(dlfcn.h)
  94. AC_CHECK_LIB(dl, dlopen)
  95. AC_CHECK_HEADERS(png.h)
  96. AC_CHECK_LIB(png, png_get_copyright)
  97. dnl This is normally done with libtool but since we aren't using libtool
  98. dnl yet to it here.
  99. dnl FIXME: forced to add -fPIC here..
  100. CFLAGS="$CFLAGS -fPIC"
  101. CXXFLAGS="$CFLAGS -fPIC"
  102. AC_SUBST(CFLAGS)
  103. AC_SUBST(CXXFLAGS)
  104. AC_SUBST(PLUGINLIST)
  105. dnl Modify the output files.
  106. AC_OUTPUT(
  107. SpiralSound/Plugins/AmpPlugin/Makefile
  108. SpiralSound/Plugins/AnotherFilterPlugin/Makefile
  109. SpiralSound/Plugins/ControllerPlugin/Makefile
  110. SpiralSound/Plugins/DelayPlugin/Makefile
  111. SpiralSound/Plugins/DiskWriterPlugin/Makefile
  112. SpiralSound/Plugins/DistributorPlugin/Makefile
  113. SpiralSound/Plugins/EchoPlugin/Makefile
  114. SpiralSound/Plugins/EnvFollowerPlugin/Makefile
  115. SpiralSound/Plugins/EnvelopePlugin/Makefile
  116. SpiralSound/Plugins/FilterPlugin/Makefile
  117. SpiralSound/Plugins/FormantFilterPlugin/Makefile
  118. SpiralSound/Plugins/JackPlugin/Makefile
  119. SpiralSound/Plugins/KeyboardPlugin/Makefile
  120. SpiralSound/Plugins/LADSPAPlugin/Makefile
  121. SpiralSound/Plugins/LFOPlugin/Makefile
  122. SpiralSound/Plugins/MatrixPlugin/Makefile
  123. SpiralSound/Plugins/MeterPlugin/Makefile
  124. SpiralSound/Plugins/MidiPlugin/Makefile
  125. SpiralSound/Plugins/MixerPlugin/Makefile
  126. SpiralSound/Plugins/MoogFilterPlugin/Makefile
  127. SpiralSound/Plugins/NoteSnapPlugin/Makefile
  128. SpiralSound/Plugins/OscillatorPlugin/Makefile
  129. SpiralSound/Plugins/OutputPlugin/Makefile
  130. SpiralSound/Plugins/PoshSamplerPlugin/Makefile
  131. SpiralSound/Plugins/RingModPlugin/Makefile
  132. SpiralSound/Plugins/SVFilterPlugin/Makefile
  133. SpiralSound/Plugins/SampleHoldPlugin/Makefile
  134. SpiralSound/Plugins/SeqSelectorPlugin/Makefile
  135. SpiralSound/Plugins/ScopePlugin/Makefile
  136. SpiralSound/Plugins/SmoothPlugin/Makefile
  137. SpiralSound/Plugins/SplitterPlugin/Makefile
  138. SpiralSound/Plugins/StereoMixerPlugin/Makefile
  139. SpiralSound/Plugins/StreamPlugin/Makefile
  140. SpiralSound/Plugins/WaveShaperPlugin/Makefile
  141. SpiralSound/Plugins/WaveTablePlugin/Makefile
  142. SpiralSound/Plugins/XFadePlugin/Makefile
  143. SpiralSound/Plugins/OperatorPlugin/Makefile
  144. SpiralSound/Plugins/CounterPlugin/Makefile
  145. SpiralSound/Plugins/FlipflopPlugin/Makefile
  146. SpiralSound/Plugins/SwitchPlugin/Makefile
  147. SpiralSound/Plugins/BeatMatchPlugin/Makefile
  148. SpiralSound/Plugins/NoisePlugin/Makefile
  149. SpiralSound/Plugins/SequencerPlugin/Makefile
  150. SpiralSound/Plugins/LogicPlugin/Makefile
  151. SpiralSound/Plugins/SplitSwitchPlugin/Makefile
  152. SpiralSound/Plugins/MixSwitchPlugin/Makefile
  153. SpiralSound/Plugins/TrigPlugin/Makefile
  154. SpiralSound/Plugins/SpiralLoopPlugin/Makefile
  155. SpiralSound/Plugins/MasherPlugin/Makefile
  156. SpiralSynthPluginLocation.h
  157. Makefile
  158. )