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.

177 lines
6.1KB

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