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.

103 lines
3.3KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-discovery #
  3. # ----------------------------------------- #
  4. # Created by falkTX
  5. #
  6. CXX ?= g++
  7. WINECXX ?= wineg++
  8. BASE_FLAGS = -O0 -g
  9. BASE_FLAGS += -Wall -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 += -DDEBUG
  13. BUILD_FLAGS += -DVESTIGE_HEADER # Comment this line to not use vestige header
  14. 32BIT_FLAGS = -m32
  15. 64BIT_FLAGS = -m64
  16. LINK_FLAGS = $(LDFLAGS)
  17. LINK_FLAGS += $(shell pkg-config --libs QtCore)
  18. ifneq ($(NATIVE),)
  19. BUILD_FLAGS += -DBUILD_NATIVE
  20. ifeq ($(shell pkg-config --exists fluidsynth && echo true),true)
  21. BUILD_FLAGS += $(shell pkg-config --cflags fluidsynth) -DWANT_FLUIDSYNTH
  22. LINK_FLAGS += $(shell pkg-config --libs fluidsynth)
  23. endif
  24. ifeq ($(shell pkg-config --exists linuxsampler && echo true),true)
  25. BUILD_FLAGS += $(shell pkg-config --cflags linuxsampler) -DWANT_LINUXSAMPLER
  26. LINK_FLAGS += $(shell pkg-config --libs linuxsampler)
  27. endif
  28. endif
  29. POSIX_BUILD_FLAGS = $(BUILD_FLAGS)
  30. POSIX_32BIT_FLAGS = $(32BIT_FLAGS) -L/usr/lib32 -L/usr/lib/i386-linux-gnu
  31. POSIX_64BIT_FLAGS = $(64BIT_FLAGS) -L/usr/lib64 -L/usr/lib/x86_64-linux-gnu
  32. POSIX_LINK_FLAGS = $(LINK_FLAGS) -ldl
  33. WIN_BUILD_FLAGS = $(BUILD_FLAGS)
  34. WIN_32BIT_FLAGS = $(32BIT_FLAGS)
  35. WIN_64BIT_FLAGS = $(64BIT_FLAGS)
  36. WIN_LINK_FLAGS = $(LINK_FLAGS) -static -mwindows
  37. WINE_BUILD_FLAGS = $(BUILD_FLAGS) # -fpermissive
  38. WINE_32BIT_FLAGS = $(32BIT_FLAGS) -L/usr/lib32/wine -L/usr/lib/i386-linux-gnu/wine
  39. WINE_64BIT_FLAGS = $(64BIT_FLAGS) -L/usr/lib64/wine -L/usr/lib/x86_64-linux-gnu/wine
  40. WINE_LINK_FLAGS = $(LINK_FLAGS) -ldl
  41. # --------------------------------------------------------------
  42. all: carla-discovery-native
  43. posix32: carla-discovery-posix32
  44. posix64: carla-discovery-posix64
  45. win32: carla-discovery-win32.exe
  46. win64: carla-discovery-win64.exe
  47. wine32: carla-discovery-win32.exe.so
  48. wine64: carla-discovery-win64.exe.so
  49. # --------------------------------------------------------------
  50. 32BIT_OBJS = carla-discovery.cpp ../carla-lilv/carla_lilv_32bit.a
  51. 64BIT_OBJS = carla-discovery.cpp ../carla-lilv/carla_lilv_64bit.a
  52. carla-discovery-native: carla-discovery.cpp ../carla-lilv/carla_lilv.a
  53. $(CXX) $^ $(BUILD_FLAGS) $(LINK_FLAGS) -o $@
  54. carla-discovery-posix32: $(32BIT_OBJS)
  55. $(CXX) $^ $(POSIX_BUILD_FLAGS) $(POSIX_32BIT_FLAGS) $(POSIX_LINK_FLAGS) -o $@
  56. carla-discovery-posix64: $(64BIT_OBJS)
  57. $(CXX) $^ $(POSIX_BUILD_FLAGS) $(POSIX_64BIT_FLAGS) $(POSIX_LINK_FLAGS) -o $@
  58. carla-discovery-win32.exe: $(32BIT_OBJS)
  59. $(CXX) $^ $(WIN_BUILD_FLAGS) $(WIN_32BIT_FLAGS) $(WIN_LINK_FLAGS) -o $@
  60. carla-discovery-win64.exe: $(64BIT_OBJS)
  61. $(CXX) $^ $(WIN_BUILD_FLAGS) $(WIN_64BIT_FLAGS) $(WIN_LINK_FLAGS) -o $@
  62. carla-discovery-win32.exe.so: $(32BIT_OBJS)
  63. $(WINECXX) $^ $(WINE_BUILD_FLAGS) $(WINE_32BIT_FLAGS) $(WINE_LINK_FLAGS) -o carla-discovery-win32.exe
  64. carla-discovery-win64.exe.so: $(64BIT_OBJS)
  65. $(WINECXX) $^ $(WINE_BUILD_FLAGS) $(WINE_64BIT_FLAGS) $(WINE_LINK_FLAGS) -o carla-discovery-win64.exe
  66. ../carla-lilv/carla_lilv.a:
  67. $(MAKE) -C ../carla-lilv
  68. ../carla-lilv/carla_lilv_32bit.a:
  69. $(MAKE) -C ../carla-lilv 32bit
  70. ../carla-lilv/carla_lilv_64bit.a:
  71. $(MAKE) -C ../carla-lilv 64bit
  72. # --------------------------------------------------------------
  73. clean:
  74. rm -f carla-discovery-*