|  | # $Id: Makefile,v 1.3 2004/08/13 16:35:59 mlogan Exp $ | 
|  | # | 
|  | include ../build/otp.mk | 
|  | include ../build/colors.mk | 
|  | include ../build/buildtargets.mk | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Application version | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  | include ../vsn.mk | 
|  | APP_NAME=thrift | 
|  | PFX=thrift | 
|  | VSN=$(THRIFT_VSN) | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Install directory specification | 
|  | # WARNING: INSTALL_DIR the command to install a directory. | 
|  | #          INSTALL_DST is the target directory | 
|  | # ---------------------------------------------------- | 
|  | INSTALL_DST = $(ERLANG_OTP)/lib/$(APP_NAME)-$(VSN) | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Target Specs | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  |  | 
|  | MODULES = $(shell find . -name \*.erl | sed 's:^\./::' | sed 's/\.erl//') | 
|  | MODULES_STRING_LIST = $(shell find . -name \*.erl | sed 's:^\./:":' | sed 's/\.erl/",/') | 
|  |  | 
|  | HRL_FILES= | 
|  | INTERNAL_HRL_FILES= $(APP_NAME).hrl | 
|  | ERL_FILES= $(MODULES:%=%.erl) | 
|  | DOC_FILES=$(ERL_FILES) | 
|  |  | 
|  | APP_FILE= $(APP_NAME).app | 
|  | APPUP_FILE= $(APP_NAME).appup | 
|  |  | 
|  | APP_SRC= $(APP_FILE).src | 
|  | APPUP_SRC= $(APPUP_FILE).src | 
|  |  | 
|  | APP_TARGET= $(EBIN)/$(APP_FILE) | 
|  | APPUP_TARGET= $(EBIN)/$(APPUP_FILE) | 
|  |  | 
|  | BEAMS= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) | 
|  | TARGET_FILES= $(BEAMS) $(APP_TARGET) $(APPUP_TARGET) | 
|  |  | 
|  | WEB_TARGET=/var/yaws/www/$(APP_NAME) | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # FLAGS | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  | ERL_FLAGS += | 
|  | ERL_INCLUDE = -I../include -I../../fslib/include -I../../system_status/include | 
|  | ERL_COMPILE_FLAGS += $(ERL_INCLUDE) +native | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Targets | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  | all debug opt: $(EBIN) $(TARGET_FILES) | 
|  |  | 
|  | #$(EBIN)/rm_logger.beam: $(APP_NAME).hrl | 
|  | include ../build/docs.mk | 
|  |  | 
|  | # Note: In the open-source build clean must not destroy the preloaded | 
|  | # beam files. | 
|  | clean: | 
|  | rm -f $(TARGET_FILES) | 
|  | rm -f *~ | 
|  | rm -f core | 
|  | rm -rf $(EBIN) | 
|  | rm -rf *html | 
|  |  | 
|  | $(EBIN): | 
|  | mkdir $(EBIN) | 
|  |  | 
|  | dialyzer: $(TARGET_FILES) | 
|  | dialyzer --src -r . $(ERL_INCLUDE) | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Special Build Targets | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  | $(APP_TARGET): $(APP_SRC) ../vsn.mk $(BEAMS) | 
|  | sed -e 's;%VSN%;$(VSN);' \ | 
|  | -e 's;%PFX%;$(PFX);' \ | 
|  | -e 's;%APP_NAME%;$(APP_NAME);' \ | 
|  | -e 's;%MODULES%;%MODULES%$(MODULES_STRING_LIST);' \ | 
|  | $< > $<".tmp" | 
|  | sed -e 's/%MODULES%\(.*\),/\1/' \ | 
|  | $<".tmp" > $@ | 
|  | rm $<".tmp" | 
|  |  | 
|  | $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk | 
|  | sed -e 's;%VSN%;$(VSN);' $< > $@ | 
|  |  | 
|  | $(WEB_TARGET): ../markup/* | 
|  | rm -rf $(WEB_TARGET) | 
|  | mkdir $(WEB_TARGET) | 
|  | cp -r ../markup/ $(WEB_TARGET) | 
|  | cp -r ../skins/ $(WEB_TARGET) | 
|  |  | 
|  | # ---------------------------------------------------- | 
|  | # Install Target | 
|  | # ---------------------------------------------------- | 
|  |  | 
|  | install: all $(WEB_TARGET) | 
|  | #	$(INSTALL_DIR) $(INSTALL_DST)/src | 
|  | #	$(INSTALL_DATA) $(ERL_FILES) $(INSTALL_DST)/src | 
|  | #	$(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(INSTALL_DST)/src | 
|  | #	$(INSTALL_DIR) $(INSTALL_DST)/include | 
|  | #	$(INSTALL_DATA) $(HRL_FILES) $(INSTALL_DST)/include | 
|  | #	$(INSTALL_DIR) $(INSTALL_DST)/ebin | 
|  | #	$(INSTALL_DATA) $(TARGET_FILES) $(INSTALL_DST)/ebin |