Collection of tools useful for audio production
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.

93 lines
3.0KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-discovery #
  3. # ----------------------------------------- #
  4. # Created by falkTX
  5. #
  6. CXX ?= g++
  7. STRIP ?= strip
  8. BASE_FLAGS = -O2 -ffast-math -fomit-frame-pointer -mtune=generic -msse -mfpmath=sse -Wall
  9. BASE_FLAGS += -I../carla-backend -I../carla-includes
  10. BUILD_FLAGS = $(BASE_FLAGS) -std=c++0x $(CXXFLAGS)
  11. BUILD_FLAGS += $(shell pkg-config --cflags QtCore)
  12. BUILD_FLAGS += -DQT_NO_DEBUG -DQT_NO_DEBUG_STREAM -DQT_NO_DEBUG_OUTPUT # -DNDEBUG
  13. BUILD_FLAGS += -DVESTIGE_HEADER # Comment this line to not use vestige header
  14. 32BIT_FLAGS = -m32
  15. 64BIT_FLAGS = -m64
  16. LINK_FLAGS = $(shell pkg-config --libs QtCore) $(LDFLAGS)
  17. ifneq ($(NATIVE),)
  18. BUILD_FLAGS += -DBUILD_NATIVE
  19. ifeq ($(shell pkg-config --exists fluidsynth && echo true),true)
  20. BUILD_FLAGS += $(shell pkg-config --cflags fluidsynth) -DWANT_FLUIDSYNTH
  21. LINK_FLAGS += $(shell pkg-config --libs fluidsynth)
  22. endif
  23. ifeq ($(shell pkg-config --exists linuxsampler && echo true),true)
  24. BUILD_FLAGS += $(shell pkg-config --cflags linuxsampler) -DWANT_LINUXSAMPLER
  25. LINK_FLAGS += $(shell pkg-config --libs linuxsampler)
  26. endif
  27. endif
  28. POSIX_BUILD_FLAGS = $(BUILD_FLAGS)
  29. POSIX_32BIT_FLAGS = $(32BIT_FLAGS) -L/usr/lib32 -L/usr/lib/i386-linux-gnu
  30. POSIX_64BIT_FLAGS = $(64BIT_FLAGS) -L/usr/lib64 -L/usr/lib/x86_64-linux-gnu
  31. POSIX_LINK_FLAGS = $(LINK_FLAGS) -ldl -lpthread
  32. WIN_BUILD_FLAGS = $(BUILD_FLAGS)
  33. WIN_32BIT_FLAGS = $(32BIT_FLAGS)
  34. WIN_64BIT_FLAGS = $(64BIT_FLAGS)
  35. WIN_LINK_FLAGS = $(LINK_FLAGS) -static -mwindows
  36. # --------------------------------------------------------------
  37. all: carla-discovery-native
  38. posix32: carla-discovery-posix32
  39. posix64: carla-discovery-posix64
  40. win32: carla-discovery-win32.exe
  41. win64: carla-discovery-win64.exe
  42. # --------------------------------------------------------------
  43. OBJS = carla-discovery.cpp
  44. carla-discovery-native: carla-discovery.cpp ../carla-lilv/carla_lilv.a
  45. $(CXX) $^ $(POSIX_BUILD_FLAGS) $(POSIX_LINK_FLAGS) -o $@ && $(STRIP) $@
  46. carla-discovery-posix32: $(OBJS) ../carla-lilv/carla_lilv_posix32.a
  47. $(CXX) $^ $(POSIX_BUILD_FLAGS) $(POSIX_32BIT_FLAGS) $(POSIX_LINK_FLAGS) -o $@ && $(STRIP) $@
  48. carla-discovery-posix64: $(OBJS) ../carla-lilv/carla_lilv_posix64.a
  49. $(CXX) $^ $(POSIX_BUILD_FLAGS) $(POSIX_64BIT_FLAGS) $(POSIX_LINK_FLAGS) -o $@ && $(STRIP) $@
  50. carla-discovery-win32.exe: $(OBJS) ../carla-lilv/carla_lilv_win32.a
  51. $(CXX) $^ $(WIN_BUILD_FLAGS) $(WIN_32BIT_FLAGS) $(WIN_LINK_FLAGS) -o $@ && $(STRIP) $@
  52. carla-discovery-win64.exe: $(OBJS) ../carla-lilv/carla_lilv_win64.a
  53. $(CXX) $^ $(WIN_BUILD_FLAGS) $(WIN_64BIT_FLAGS) $(WIN_LINK_FLAGS) -o $@ && $(STRIP) $@
  54. ../carla-lilv/carla_lilv.a:
  55. $(MAKE) -C ../carla-lilv
  56. ../carla-lilv/carla_lilv_posix32.a:
  57. $(MAKE) -C ../carla-lilv posix32
  58. ../carla-lilv/carla_lilv_posix64.a:
  59. $(MAKE) -C ../carla-lilv posix64
  60. ../carla-lilv/carla_lilv_win32.a:
  61. $(MAKE) -C ../carla-lilv win32
  62. ../carla-lilv/carla_lilv_win64.a:
  63. $(MAKE) -C ../carla-lilv win64
  64. # --------------------------------------------------------------
  65. clean:
  66. rm -f carla-discovery-*