X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/c8c3c534f5e3b243ba524d8b24a60b0dad238dee..7d8f69bd16c0e415d771a29c367519f26184ffae:/stglibs/Makefile.in diff --git a/stglibs/Makefile.in b/stglibs/Makefile.in index c6db5f99..b5d1195c 100644 --- a/stglibs/Makefile.in +++ b/stglibs/Makefile.in @@ -4,74 +4,50 @@ include ../../Makefile.conf -PROG = lib$(LIB_NAME).so +PROG = lib$(LIB_NAME).a -ifeq ($(PROT), on) -DEFS += -DLINPROT -endif - -ifeq ($(DEMO), on) -DEFS += -DDEMO -endif - -ifeq ($(OS), bsd) - ifeq ($(PROT), on) - DEFS += -DFREEBDSPROT - endif -MAKE = gmake -endif - -ifeq ($(OS), bsd5) - ifeq ($(PROT), on) - DEFS += -DFREEBDSPROT - endif -MAKE = gmake -endif +SEARCH_DIRS = -I ../../include -I . -I ./include ifeq ($(STG_TIME), yes) DEFS += -DSTG_TIME endif -ifneq ($(ADD_DEFS),) -DEFS += $(ADD_DEFS) +ifneq ($(LIB_DEFS),) +DEFS += $(LIB_DEFS) endif -SEARCH_DIRS = -I $(DIR_INCLUDE) -I ./ +ifneq ($(LIB_INCS),) +SEARCH_DIRS += $(LIB_INCS) +endif OBJS = $(notdir $(patsubst %.cpp, %.o, $(patsubst %.c, %.o, $(SRCS)))) -INST_INCS = $(addprefix $(DIR_INCLUDE)/, $(notdir $(INCS))) -INST_LIBS = $(DIR_LIB)/lib$(LIB_NAME) - -CXXFLAGS += -fPIC $(DEFS) -LDFLAGS += -shared -Wl,-rpath,$(PREFIX)/usr/lib/stg - -vpath %.so $(DIR_LIB) +CXXFLAGS += -fPIC $(SEARCH_DIRS) $(DEFS) +CFLAGS += -fPIC $(SEARCH_DIRS) $(DEFS) all: $(PROG) -$(PROG): $(OBJS) $(STGLIBS) - $(CXX) $(LDFLAGS) -Wl,-soname,$(PROG) $^ $(LIBS) -o $(PROG) -L $(DIR_LIB) +$(PROG): $(OBJS) ar rc lib$(LIB_NAME).a $(OBJS) ranlib lib$(LIB_NAME).a - cp *.so $(DIR_LIB) - cp *.a $(DIR_LIB) - -includes: $(INCS) - cp -p $(INCS) $(DIR_INCLUDE) clean: rm -f deps $(PROG) *.o *.a *.so tags *.*~ - for file in $(INCS); do \ - rm -f $(DIR_INCLUDE)/$$file; \ - done install: $(PROG) - mkdir -m $(BIN_MODE) -p $(PREFIX)/usr/lib/stg - install -m $(BIN_MODE) -o $(OWNER) -s $(PROG) $(PREFIX)/usr/lib/stg/$(PROG) +ifeq ($(DEBUG), yes) + install -D -m $(BIN_MODE) -o $(OWNER) $(PROG) $(PREFIX)/usr/lib/stg/$(PROG) +else + install -D -m $(BIN_MODE) -o $(OWNER) -s $(PROG) $(PREFIX)/usr/lib/stg/$(PROG) +endif + mkdir -m $(DIR_MODE) -p $(PREFIX)/usr/include/stg + install -m $(DATA_MODE) -o $(OWNER) $(addprefix include/stg/,$(INCS)) $(PREFIX)/usr/include/stg/ uninstall: rm -f $(PREFIX)/usr/lib/stg/$(PROG) + for file in $(INCS); do \ + rm -f $(PREFIX)/usr/include/stg/$$file; \ + done ifneq ($(MAKECMDGOALS),includes) ifneq ($(MAKECMDGOALS),clean) @@ -84,7 +60,13 @@ endif deps: $(SRCS) ../../Makefile.conf @>deps ;\ for file in $(SRCS); do\ - echo "`$(CC) $(CXXFLAGS) $(SEARCH_DIRS) $(DEFS) -MM -MG $$file` Makefile ../../Makefile.conf" >> deps ;\ - echo -e '\t$$(CC) $(CXXFLAGS) $(SEARCH_DIRS) $(DEFS) -c $$<' >> deps ;\ + echo "$$file" | grep ".c$$" > /dev/null;\ + if [ $$? -eq 0 ];\ + then\ + echo "`$(CC) $(CFLAGS) -MM $$file` Makefile ../../Makefile.conf" >> deps ;\ + printf '%b\n' '\t$$(CC) $(CFLAGS) -c $$<' >> deps ;\ + else\ + echo "`$(CXX) $(CXXFLAGS) -MM $$file` Makefile ../../Makefile.conf" >> deps ;\ + printf '%b\n' '\t$$(CXX) $(CXXFLAGS) -c $$<' >> deps ;\ + fi;\ done -