The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
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.

97 lines
3.1KB

  1. # C++ Console Executable Makefile autogenerated by premake
  2. # Don't edit this file! Instead edit `premake.lua` then rerun `make`
  3. ifndef CONFIG
  4. CONFIG=Debug
  5. endif
  6. # if multiple archs are defined turn off automated dependency generation
  7. DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD)
  8. ifeq ($(CONFIG),Debug)
  9. BINDIR := build
  10. LIBDIR := build
  11. OBJDIR := build/intermediate/Debug
  12. OUTDIR := build
  13. CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -I "/usr/include" -I "/usr/include/freetype2"
  14. CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -D_DEBUG -ggdb
  15. CXXFLAGS += $(CFLAGS)
  16. LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -lpthread -lrt -ldl
  17. LDDEPS :=
  18. RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -I "/usr/include" -I "/usr/include/freetype2"
  19. TARGET := amalgamator
  20. BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH)
  21. endif
  22. ifeq ($(CONFIG),Release)
  23. BINDIR := build
  24. LIBDIR := build
  25. OBJDIR := build/intermediate/Release
  26. OUTDIR := build
  27. CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -I "/usr/include" -I "/usr/include/freetype2"
  28. CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O2
  29. CXXFLAGS += $(CFLAGS)
  30. LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -s -L"/usr/X11R6/lib/" -lpthread -lrt -ldl
  31. LDDEPS :=
  32. RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -I "/usr/include" -I "/usr/include/freetype2"
  33. TARGET := amalgamator
  34. BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH)
  35. endif
  36. OBJECTS := \
  37. $(OBJDIR)/juce_AmalgamatorMain.o \
  38. $(OBJDIR)/juce_LibrarySource.o \
  39. MKDIR_TYPE := msdos
  40. CMD := $(subst \,\\,$(ComSpec)$(COMSPEC))
  41. ifeq (,$(CMD))
  42. MKDIR_TYPE := posix
  43. endif
  44. ifeq (/bin,$(findstring /bin,$(SHELL)))
  45. MKDIR_TYPE := posix
  46. endif
  47. ifeq ($(MKDIR_TYPE),posix)
  48. CMD_MKBINDIR := mkdir -p $(BINDIR)
  49. CMD_MKLIBDIR := mkdir -p $(LIBDIR)
  50. CMD_MKOUTDIR := mkdir -p $(OUTDIR)
  51. CMD_MKOBJDIR := mkdir -p $(OBJDIR)
  52. else
  53. CMD_MKBINDIR := $(CMD) /c if not exist $(subst /,\\,$(BINDIR)) mkdir $(subst /,\\,$(BINDIR))
  54. CMD_MKLIBDIR := $(CMD) /c if not exist $(subst /,\\,$(LIBDIR)) mkdir $(subst /,\\,$(LIBDIR))
  55. CMD_MKOUTDIR := $(CMD) /c if not exist $(subst /,\\,$(OUTDIR)) mkdir $(subst /,\\,$(OUTDIR))
  56. CMD_MKOBJDIR := $(CMD) /c if not exist $(subst /,\\,$(OBJDIR)) mkdir $(subst /,\\,$(OBJDIR))
  57. endif
  58. .PHONY: clean
  59. $(OUTDIR)/$(TARGET): $(OBJECTS) $(LDDEPS) $(RESOURCES)
  60. @echo Linking Amalgamator
  61. -@$(CMD_MKBINDIR)
  62. -@$(CMD_MKLIBDIR)
  63. -@$(CMD_MKOUTDIR)
  64. @$(BLDCMD)
  65. clean:
  66. @echo Cleaning Amalgamator
  67. ifeq ($(MKDIR_TYPE),posix)
  68. -@rm -f $(OUTDIR)/$(TARGET)
  69. -@rm -rf $(OBJDIR)
  70. else
  71. -@if exist $(subst /,\,$(OUTDIR)/$(TARGET)) del /q $(subst /,\,$(OUTDIR)/$(TARGET))
  72. -@if exist $(subst /,\,$(OBJDIR)) del /q $(subst /,\,$(OBJDIR))
  73. -@if exist $(subst /,\,$(OBJDIR)) rmdir /s /q $(subst /,\,$(OBJDIR))
  74. endif
  75. $(OBJDIR)/juce_AmalgamatorMain.o: ../juce_AmalgamatorMain.cpp
  76. -@$(CMD_MKOBJDIR)
  77. @echo $(notdir $<)
  78. @$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
  79. $(OBJDIR)/juce_LibrarySource.o: ../juce_LibrarySource.cpp
  80. -@$(CMD_MKOBJDIR)
  81. @echo $(notdir $<)
  82. @$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
  83. -include $(OBJECTS:%.o=%.d)