1 ifneq ($(PREFIX),"") 2 INSTALL_DIR = $(PREFIX)/lib/lv2 3 else ifeq ($(shell whoami),root) 4 INSTALL_DIR = /usr/lib/lv2 5 else 6 INSTALL_DIR = ~/.lv2 7 endif 8 9 NAME = sc_record 10 BUNDLE = $(NAME).lv2 11 VER = 0.1 12 13 CXXFLAGS += -I. -Wall -ffast-math `pkg-config --cflags sndfile` 14 LDFLAGS += -I. -pthread -shared -Llibrary -lc -lm -lrt -fPIC -DPIC `pkg-config --libs sndfile` 15 16 OBJECTS = $(NAME).cpp 17 18 ## output style (bash colours) 19 BLUE = "\033[1;34m" 20 RED = "\033[1;31m" 21 NONE = "\033[0m" 22 23.PHONY : all clean install uninstall 24 25all : $(NAME) 26 @mkdir -p ./$(BUNDLE) 27 @cp ./*.ttl ./$(BUNDLE) 28 @mv ./*.so ./$(BUNDLE) 29 @if [ -f ./$(BUNDLE)/$(NAME).so ]; then echo $(BLUE)"build finish, now run make install"; \ 30 else echo $(RED)"sorry, build failed"; fi 31 @echo $(NONE) 32 33clean : 34 @rm -f $(NAME).so 35 @rm -rf ./$(BUNDLE) 36 @echo ". ." $(BLUE)", done"$(NONE) 37 38install : all 39 @mkdir -p $(DESTDIR)$(INSTALL_DIR)/$(BUNDLE) 40 install ./$(BUNDLE)/* $(DESTDIR)$(INSTALL_DIR)/$(BUNDLE) 41 @echo ". ." $(BLUE)", done"$(NONE) 42 43uninstall : 44 @rm -rf $(INSTALL_DIR)/$(BUNDLE) 45 @echo ". ." $(BLUE)", done"$(NONE) 46 47$(NAME) : 48 $(CXX) $(CXXFLAGS) $(OBJECTS) $(LDFLAGS) -o $(NAME).so 49