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.
 
 

55 lines
947 B

TARGET_EXE=synth_shed
TARGET_MODULE=synth_shed.so
PREFIX=/Users/heck/local-default
# C
CFLAGS+=-std=c99 -g
# C++
CXX=clang
CXXFLAGS+=-std=c++11 -g
# Sources
SRCS_C+=$(wildcard *.c)
SRCS_CXX+=$(wildcard *.cc)
# deps
INCLUDES+=-I/opt/local/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8
INCLUDES+=-I$(PREFIX)/include
#Link
C_LDFLAGS+=
CXX_LDFLAGS+=-undefined dynamic_lookup
CXXFLAGS+=$(INCLUDES)
OBJS_C+=$(SRCS_C:.c=.o)
OBJS_CXX+=$(SRCS_CXX:.cc=.o)
OBJS = $(OBJS_C) $(OBJS_CXX)
$(info -----BUILD INFO----)
$(info SRCS_C $(SRCS_C))
$(info SRCS_CXX $(SRCS_CXX))
$(info OBJS_C $(OBJS_C))
$(info OBJS_CXX $(OBJS_CXX))
$(info OBJS $(OBJS))
.PHONY: all exe module clean
all: exe module
exe: $(TARGET_EXE)
module: $(TARGET_MODULE)
$(TARGET_EXE) : $(OBJS_C)
$(CC) $(C_LDFLAGS) -o $@ $^
$(TARGET_MODULE) : $(OBJS)
$(CXX) $(CXX_LDFLAGS) -o $@ $^
clean:
rm -f $(TARGET_EXE)
rm -f $(TARGET_MODULE)
rm -f $(OBJS)