|
- #
- # Common lib makefile for GCC / Linux target
- #
-
- #
- #
- # In order to extend existing targets, add
- # your targets to the
- #
- # HELP_RULES - extends "help" target
- # INSTALL_RULES - extends "install" target
- # BIN_RULES - extends "bin" target
- # CLEAN_RULES - extends "clean" target
- # REALCLEAN_RULES - extends "realclean" target
- #
- # variables
- #
- #
-
-
- #
- # Determine TARGET filename if only TARGET_BASENAME name is known
- #
- ifeq ("$(TARGET)","")
- TARGET=$(TARGET_BASENAME).a
- endif
-
- CFLAGS+= -fPIC
- CPPFLAGS+= -fPIC
-
- CPPFLAGS += -I"$(VSVR_BASE_DIR)/dep/yac/" -DLINUX $(EXTRAFLAGS)
- # -DYAC_FORCE_NO_TLS
- EXTRALIBS +=
-
-
- #
- # Build plugin library
- #
- bin: $(BIN_RULES) $(ALL_OBJ)
- # $(LD) $(LDFLAGS_SIZE) -OUT:$(TARGET) $(ALL_OBJ) $(EXTRALIBS)
- $(AR) r $(TARGET) $(ALL_OBJ)
- # $(EXTRALIBS)
- @ls -1l $(TARGET)
- @echo "Build finished at `date +%H:%M`."
-
-
- .cpp.o:
- $(CC) $(CPPFLAGS) $(OPTFLAGS_PLUGIN) -c "$<" -o"$@"
-
- .cc.o:
- $(CC) $(CPPFLAGS) $(OPTFLAGS_PLUGIN) -c "$<" -o"$@"
-
- .c.o:
- $(CC) $(CPPFLAGS) $(OPTFLAGS_PLUGIN) -c "$<" -o"$@"
-
-
- #
- # Install plugin
- # (Note: cannot depend on "bin" target since this would overwrite the UPX compressed file..)
- #
- .PHONY: install
- install: $(INSTALL_RULES)
- $(CP) $(TARGET) $(LIB_INSTALL_PREFIX)
- @echo "[...] $(TARGET) installed to \"$(LIB_INSTALL_PREFIX)\".";
-
-
-
-
-
- #
- # Make clean and remove backup files
- #
- .PHONY: realclean
- realclean: $(REALCLEAN_RULES) clean
- $(RM) `$(FIND) . -name \*\~` $(TARGET) *.exp *.lib *.plg *.ncb *.map *.manifest *.a
-
-
- #
- # Remove object files and targets.
- #
- .PHONY: clean
- clean: $(CLEAN_RULES)
- @echo "[...] cleaning up.."
- $(RM) $(ALL_OBJ) $(TARGET)
|