diff options
Diffstat (limited to 'lib/megaco/src/binary/Makefile')
-rw-r--r-- | lib/megaco/src/binary/Makefile | 212 |
1 files changed, 212 insertions, 0 deletions
diff --git a/lib/megaco/src/binary/Makefile b/lib/megaco/src/binary/Makefile new file mode 100644 index 0000000000..d594f34f43 --- /dev/null +++ b/lib/megaco/src/binary/Makefile @@ -0,0 +1,212 @@ +# +# %CopyrightBegin% +# +# Copyright Ericsson AB 2000-2009. All Rights Reserved. +# +# The contents of this file are subject to the Erlang Public License, +# Version 1.1, (the "License"); you may not use this file except in +# compliance with the License. You should have received a copy of the +# Erlang Public License along with this software. If not, it can be +# retrieved online at http://www.erlang.org/. +# +# Software distributed under the License is distributed on an "AS IS" +# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +# the License for the specific language governing rights and limitations +# under the License. +# +# %CopyrightEnd% + +include $(ERL_TOP)/make/target.mk + +EBIN = ../../ebin +MEGACO_INCLUDEDIR = ../../include +MEGACO_ENGINEDIR = ../engine + +include $(ERL_TOP)/make/$(TARGET)/otp.mk + + +# ---------------------------------------------------- +# Application version +# ---------------------------------------------------- +include ../../vsn.mk +VSN=$(MEGACO_VSN) + + +# ---------------------------------------------------- +# Release directory specification +# ---------------------------------------------------- +RELSYSDIR = $(RELEASE_PATH)/lib/megaco-$(VSN) + + +# ---------------------------------------------------- +# Target Specs +# ---------------------------------------------------- + +include modules.mk + +ASN1_SPECS = $(ASN1_V1_SPEC) \ + $(ASN1_V2_SPEC) \ + $(ASN1_PREV3A_SPEC) +ASN1_FILES = $(ASN1_SPECS:%=%.asn) + +V1_SPECS = $(BER_ASN1_V1_SPEC) \ + $(BER_BIN_ASN1_V1_SPEC) \ + $(BER_BIN_DRV_ASN1_V1_SPEC) \ + $(PER_ASN1_V1_SPEC) \ + $(PER_BIN_ASN1_V1_SPEC) \ + $(PER_BIN_DRV_ASN1_V1_SPEC) + +V2_SPECS = $(BER_ASN1_V2_SPEC) \ + $(BER_BIN_ASN1_V2_SPEC) \ + $(BER_BIN_DRV_ASN1_V2_SPEC) \ + $(PER_ASN1_V2_SPEC) \ + $(PER_BIN_ASN1_V2_SPEC) \ + $(PER_BIN_DRV_ASN1_V2_SPEC) + +PREV3A_SPECS = $(BER_ASN1_PREV3A_SPEC) \ + $(BER_BIN_ASN1_PREV3A_SPEC) \ + $(BER_BIN_DRV_ASN1_PREV3A_SPEC) \ + $(PER_ASN1_PREV3A_SPEC) \ + $(PER_BIN_ASN1_PREV3A_SPEC) \ + $(PER_BIN_DRV_ASN1_PREV3A_SPEC) + +PREV3B_SPECS = $(BER_ASN1_PREV3B_SPEC) \ + $(BER_BIN_ASN1_PREV3B_SPEC) \ + $(BER_BIN_DRV_ASN1_PREV3B_SPEC) \ + $(PER_ASN1_PREV3B_SPEC) \ + $(PER_BIN_ASN1_PREV3B_SPEC) \ + $(PER_BIN_DRV_ASN1_PREV3B_SPEC) + +PREV3C_SPECS = $(BER_ASN1_PREV3C_SPEC) \ + $(BER_BIN_ASN1_PREV3C_SPEC) \ + $(BER_BIN_DRV_ASN1_PREV3C_SPEC) \ + $(PER_ASN1_PREV3C_SPEC) \ + $(PER_BIN_ASN1_PREV3C_SPEC) \ + $(PER_BIN_DRV_ASN1_PREV3C_SPEC) + +V3_SPECS = $(BER_ASN1_V3_SPEC) \ + $(BER_BIN_ASN1_V3_SPEC) \ + $(BER_BIN_DRV_ASN1_V3_SPEC) \ + $(PER_ASN1_V3_SPEC) \ + $(PER_BIN_ASN1_V3_SPEC) \ + $(PER_BIN_DRV_ASN1_V3_SPEC) \ + $(PREV3A_SPECS) $(PREV3B_SPECS) $(PREV3C_SPECS) + +SPECS = $(V1_SPECS) $(V2_SPECS) $(V3_SPECS) + +V1_SPEC_ASN1DB = $(V1_SPECS:%=%.asn1db) +V2_SPEC_ASN1DB = $(V2_SPECS:%=%.asn1db) +PREV3A_SPEC_ASN1DB = $(PREV3A_SPECS:%=%.asn1db) +PREV3B_SPEC_ASN1DB = $(PREV3B_SPECS:%=%.asn1db) +PREV3C_SPEC_ASN1DB = $(PREV3C_SPECS:%=%.asn1db) +V3_SPEC_ASN1DB = $(V3_SPECS:%=%.asn1db) \ + $(PREV3A_SPEC_ASN1DB) \ + $(PREV3B_SPEC_ASN1DB) \ + $(PREV3C_SPEC_ASN1DB) +SPEC_ASN1DB = $(V1_SPEC_ASN1DB) \ + $(V2_SPEC_ASN1DB)\ + $(V3_SPEC_ASN1DB) + +V1_SPEC_BINS = $(V1_SPECS:%=%.erl) $(V1_SPECS:%=%.hrl) +V2_SPEC_BINS = $(V2_SPECS:%=%.erl) $(V2_SPECS:%=%.hrl) +PREV3A_SPEC_BINS = $(PREV3A_SPECS:%=%.erl) $(PREV3A_SPECS:%=%.hrl) +PREV3B_SPEC_BINS = $(PREV3B_SPECS:%=%.erl) $(PREV3B_SPECS:%=%.hrl) +PREV3C_SPEC_BINS = $(PREV3C_SPECS:%=%.erl) $(PREV3C_SPECS:%=%.hrl) +V3_SPEC_BINS = $(V3_SPECS:%=%.erl) $(V3_SPECS:%=%.hrl) \ + $(PREV3A_SPEC_BINS) \ + $(PREV3B_SPEC_BINS) \ + $(PREV3C_SPEC_BINS) +SPEC_BINS = $(V1_SPEC_BINS) $(V2_SPEC_BINS) $(V3_SPEC_BINS) + +ERL_FILES = $(MODULES:%=%.erl) +HRL_FILES = $(INTERNAL_HRL_FILES) \ + $(V1_SPECS:%=%.hrl) \ + $(V2_SPECS:%=%.hrl) \ + $(V3_SPECS:%=%.hrl) + +TARGET_FILES = \ + $(MODULES:%=$(EBIN)/%.$(EMULATOR)) + + +# ---------------------------------------------------- +# FLAGS +# ---------------------------------------------------- +ifeq ($(TYPE),debug) +ERL_COMPILE_FLAGS += -Ddebug +endif + +include ../app/megaco.mk + +ERL_COMPILE_FLAGS += \ + $(MEGACO_ERL_COMPILE_FLAGS) \ + -I../../include + + +# ---------------------------------------------------- +# Targets +# ---------------------------------------------------- +debug: + @${MAKE} TYPE=debug opt + +opt: prebuild $(TARGET_FILES) + +prebuild: prebuild.skip + +prebuild.skip: + @echo "Building prebuild.skip\c" + @touch prebuild.skip + @for a in $(SPEC_ASN1DB); do \ + echo $$a >> prebuild.skip; \ + done + @echo "" + +v1: $(V2_SPEC_BINS) + +v2: $(V2_SPEC_BINS) + +v3: $(V3_SPEC_BINS) + +specs: v1 v2 v3 + +clean: + rm -f $(TARGET_FILES) + rm -f $(SPEC_BINS) + rm -f $(SPEC_ASN1DB) + rm -f prebuild.skip + rm -f core *~ + +docs: + +info: + @echo "MODULES: $(MODULES)" + @echo "ERL_FILES: $(ERL_FILES)" + @echo "HRL_FILES: $(HRL_FILES)" + @echo "TARGET_FILES: $(TARGET_FILES)" + @echo "ASN1_SPECS: $(ASN1_SPECS)" + @echo "SPECS: $(SPECS)" + @echo "SPEC_BINS: $(SPEC_BINS)" + + +# ---------------------------------------------------- +# Release Target +# ---------------------------------------------------- +include $(ERL_TOP)/make/otp_release_targets.mk + + +release_spec: opt + $(INSTALL_DIR) $(RELSYSDIR)/ebin + $(INSTALL_DATA) $(TARGET_FILES) $(RELSYSDIR)/ebin + $(INSTALL_DIR) $(RELSYSDIR)/src + $(INSTALL_DIR) $(RELSYSDIR)/src/binary + $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(ASN1_FILES) $(RELSYSDIR)/src/binary + + +release_docs_spec: + + +# ---------------------------------------------------- +# Include dependencies +# ---------------------------------------------------- + +include depend.mk + |