# Default Makefile for plug-ins. # $Id$ # Define compilers. CC = clang++ CPPFLAGS = -c -fno-exceptions -fno-rtti -fPIC -Wall -Wextra `wx-config --cxxflags` $(CPPFLAGS_ADD) LDFLAGS = -shared -Wl,-Bsymbolic -s # Define i/o files. ARCH = $(shell uname -m) DIR_OBJ = ../../tmp-$(ARCH)/$(PLUGIN_NAME) DIR_LIB = ../../../bin/lib-$(ARCH) OUT_LIB = $(DIR_LIB)/$(PLUGIN_NAME).so IN_DEF = ../../common/header/plugin.def OBJS = $(PLUGIN_NAME).o ifndef NOUSE_LIBRARY OBJS += ../library.o endif ifndef NOUSE_XML OBJS += ../xmldoc.o endif FULL_OBJS=$(addprefix $(DIR_OBJ)/,$(OBJS) $(OBJS_ADD)) .PHONY: all clean .SUFFIXES: .cpp .o all: $(OUT_LIB) clean: rm -f -r $(FULL_OBJS) $(OUT_LIB) $(OUT_LIB): $(DIR_OBJ) $(FULL_OBJS) $(CC) $(LDFLAGS) -o $(OUT_LIB) -L$(DIR_LIB) -Wl,-soname,$(notdir $(OUT_LIB)) $(FULL_OBJS) `wx-config --libs` chcon -t textrel_shlib_t $(OUT_LIB) $(DIR_OBJ): mkdir $(DIR_OBJ) $(DIR_OBJ)/%.o: %.cpp $(CC) $(CPPFLAGS) -o $@ $<