Assists music production by grouping standalone programs into sessions. Community version of "Non Session Manager".
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.

73 lines
2.8KB

  1. # -*- mode: makefile; -*-
  2. VERSION := 1.0.0
  3. PACKAGE := SESSION_MANAGER
  4. BIN_NAME := non-session-manager
  5. all: Session
  6. SRCS := $(wildcard src/*.C src/*.fl)
  7. # SRCS += util/debug.C util/Thread.C util/file.C
  8. SRCS:=$(SRCS:.fl=.C)
  9. SRCS:=$(sort $(SRCS))
  10. OBJS:=$(SRCS:.C=.o)
  11. LIBS += $(LIBLO_LIBS) $(SIGCPP_LIBS)
  12. CFLAGS += $(LIBLO_CFLAGS) $(SIGCPP_CFLAGS) $(XPM_CFLAGS) $(FLTK_CFLAGS)
  13. src/nsmd: src/nsmd.o nonlib/libnonlib.a
  14. @ echo -n Linking session handler.
  15. @ $(CXX) $(CXXFLAGS) $(LIBS) $^ -o $@ -Lnonlib -lnonlib && echo $(DONE)
  16. src/session-manager: src/session-manager.o nonlib/libnonlib.a $(FLTK_LIBS)
  17. @ echo -n Linking session handler.
  18. @ $(CXX) $(CXXFLAGS) $(FLTK_LDFLAGS) $(XPM_LIBS) $(LIBS) $^ -o $@ -LFL -lfl_widgets -Lnonlib -lnonlib && echo $(DONE)
  19. src/nsm-proxy: src/nsm-proxy.o nonlib/libnonlib.a
  20. @ echo -n Linking NSM Proxy.
  21. @ $(CXX) $(CXXFLAGS) $(LIBS) $^ -o $@ -Lnonlib -lnonlib && echo $(DONE)
  22. # src/NSM_Proxy_UI.o:
  23. # @ cd src && $(FLUID) -c NSM_Proxy_UI.fl
  24. src/nsm-proxy-gui: src/NSM_Proxy_UI.o src/nsm-proxy-gui.o nonlib/libnonlib.a $(FLTK_LIBS)
  25. @ echo -n Linking NSM Proxy.
  26. @ $(CXX) $(CXXFLAGS) $(FLTK_LDFLAGS) $(XPM_LIBS) $(LIBS) $^ -o $@ -LFL -lfl_widgets -Lnonlib -lnonlib && echo $(DONE)
  27. src/send_osc: src/send_osc.o nonlib/libnonlib.a
  28. @ $(CXX) $(CXXFLAGS) $(LIBS) $^ -o $@ -Lnonlib -lnonlib && echo $(DONE)
  29. src/jackpatch: src/jackpatch.o
  30. @ $(CXX) $(CXXFLAGS) $(JACK_LIBS) $(LIBLO_LIBS) $^ -o $@ && echo $(DONE)
  31. Session: src/send_osc src/nsmd src/session-manager src/jackpatch src/nsm-proxy src/nsm-proxy-gui
  32. clean:
  33. rm -f $(OBJS) src/nsmd src/session-manager src/jackpatch src/nsm-proxy src/nsm-proxy-gui .deps
  34. install: all
  35. @ echo -n "Installing..."
  36. @ install -Dm755 src/nsmd "$(DESTDIR)$(prefix)"/bin/nsmd
  37. @ install -Dm755 src/session-manager "$(DESTDIR)$(prefix)"/bin/non-session-manager
  38. @ install -Dm755 src/nsm-proxy "$(DESTDIR)$(prefix)"/bin/nsm-proxy
  39. @ install -Dm755 src/nsm-proxy-gui "$(DESTDIR)$(prefix)"/bin/nsm-proxy-gui
  40. @ install -Dm755 src/jackpatch "$(DESTDIR)$(prefix)"/bin/jackpatch
  41. @ install -d "$(DESTDIR)$(SYSTEM_PATH)"/non-session-manager
  42. @ $(MAKE) -s -C doc install
  43. @ install -d "$(DESTDIR)$(PIXMAP_PATH)/non-session-manager"
  44. @ install -m 644 icons/hicolor/256x256/apps/non-session-manager.png "$(DESTDIR)$(PIXMAP_PATH)"/non-session-manager/icon-256x256.png
  45. @ install -d "$(DESTDIR)$(ICON_PATH)/hicolor"
  46. @ cp -au icons/hicolor/ "$(DESTDIR)$(ICON_PATH)"
  47. @ install -d "$(DESTDIR)$(DESKTOP_PATH)"
  48. @ sed 's:@BIN_PATH@:$(prefix)/bin:' non-session-manager.desktop.in > "$(DESTDIR)$(DESKTOP_PATH)/non-session-manager.desktop"
  49. @ echo "$(DONE)"
  50. ifneq ($(USE_DEBUG),yes)
  51. @ echo -n "Stripping..."
  52. @ strip "$(DESTDIR)$(prefix)"/bin/jackpatch
  53. @ strip "$(DESTDIR)$(prefix)"/bin/nsmd
  54. @ strip "$(DESTDIR)$(prefix)"/bin/non-session-manager
  55. @ echo "$(DONE)"
  56. endif