makefile.in

来自「OTP是开放电信平台的简称」· IN 代码 · 共 896 行 · 第 1/2 页

IN
896
字号
# ``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 via the world wide web 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.# # The Initial Developer of the Original Code is Ericsson Utvecklings AB.# Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings# AB. All Rights Reserved.''# #     $Id$################################################################################  This is a standalone make file for erl_interface. It is##  to be preprocessed by the configure script and the result##  is saved into the TARGER directory.####  We use 'vpath' to use plain C file names without the directory##  part in dependency rules.#############################################################################.PHONY : debug opt release clean distclean dependTARGET = @TARGET@# ----------------------------------------------------# Application version and release dir specification# ----------------------------------------------------include ../vsn.mkinclude $(TARGET)/eidefs.mkUSING_MINGW=@MIXED_CYGWIN_MINGW@USING_VC=@MIXED_CYGWIN_VC@ifdef TESTROOTRELEASE_PATH=$(TESTROOT)elseRELEASE_PATH=$(ERL_TOP)/release/$(TARGET)endifRELSYSDIR = $(RELEASE_PATH)/lib/erl_interface-$(EI_VSN)# ----------------------------------------------------# XXXX# ----------------------------------------------------ifeq ($(TYPE),debug)PURIFY =TYPEMARKER = .debugTYPE_FLAGS = -g -DDEBUGifeq ($(TARGET),win32)LDFLAGS += -gendifelseifeq ($(TYPE),purify)PURIFY = purifyTYPEMARKER = .purifyTYPE_FLAGS = -DPURIFY -DNO_JUMP_TABLEelseifeq ($(TYPE),quantify)PURIFY = quantifyTYPEMARKER = .quantifyTYPE_FLAGS = -g -O2 -DQUANTIFYelseifeq ($(TYPE),purecov)PURIFY = purecov --follow-child-processes=yesTYPEMARKER = .purecovTYPE_FLAGS = -g -DPURECOV -DNO_JUMP_TABLEelsePURIFY =TYPEMARKER =TYPE_FLAGS =endifendifendifendifCC = @CC@LD = @LD@AR = @AR@RANLIB = @RANLIB@INCFLAGS = -I. -I../include -Iconnect -Iencode -Idecode -Imisc -Iepmd \	-Iregistry -I$(TARGET) ifeq ($(USING_VC),yes)WARNFLAGS = -WallelseWARNFLAGS = @WFLAGS@endififneq ($(findstring ose,$(TARGET)),ose)CFLAGS = @DED_CFLAGS@ $(WARNFLAGS) $(INCFLAGS) $(TYPE_FLAGS)elseCFLAGS = @CFLAGS@ $(INCFLAGS)endifPROG_CFLAGS = @CFLAGS@ $(WARNFLAGS) $(INCFLAGS) $(TYPE_FLAGS) -Ilegacyifeq ($(findstring vxworks,$(TARGET)),vxworks)PROG_CFLAGS += -nostartfiles -Wl,-r,-dendifLIBS = @LIBS@INSTALL = @INSTALL@INSTALL_DIR = @INSTALL_DIR@INSTALL_DATA = @INSTALL_DATA@INSTALL_PROGRAM = @INSTALL_PROGRAM@# The default library (no extra extension in name) is for Unix with# thread support if exists.  For windows MD is the default.##   ST  = single threaded (Unix without thread support)#   MT  = multi threaded (on windows also static linking)#   MD  = multithreaded dynamic (default for cygwin cc wrapper)#   MDD = multithreaded dynamic with debug symbols#ST_OBJDIR  = $(ERL_TOP)/lib/erl_interface/obj.st$(TYPEMARKER)/$(TARGET)MT_OBJDIR  = $(ERL_TOP)/lib/erl_interface/obj.mt$(TYPEMARKER)/$(TARGET)MD_OBJDIR  = $(ERL_TOP)/lib/erl_interface/obj.md$(TYPEMARKER)/$(TARGET)MDD_OBJDIR = $(ERL_TOP)/lib/erl_interface/obj.mdd$(TYPEMARKER)/$(TARGET)OBJDIR     = $(ERL_TOP)/lib/erl_interface/obj$(TYPEMARKER)/$(TARGET)BINDIR     = $(ERL_TOP)/lib/erl_interface/bin/$(TARGET)# FIXME maybe use this opt and remove (int) cast to is*() functions# -Wno-char-subscripts# -Wshadowvpath %.c connect:encode:decode:misc:epmd:legacy:registry############################################################################  List targets###########################################################################ifeq ($(TARGET),win32)EXE=.exeelseEXE=endififeq ($(USING_VC),yes)LIBEXT=.libLIBPRE=MTFLAG=-MTelseLIBEXT=.aLIBPRE=libMTFLAG=endif############################################################################  Specify targets names###########################################################################ERL_CALL   = $(BINDIR)/erl_call$(EXE)ifdef THR_DEFSST_EILIB   = $(OBJDIR)/$(LIBPRE)ei_st$(LIBEXT)ST_ERLLIB  = $(OBJDIR)/$(LIBPRE)erl_interface_st$(LIBEXT)MT_EILIB   = $(OBJDIR)/$(LIBPRE)ei$(LIBEXT)MT_ERLLIB  = $(OBJDIR)/$(LIBPRE)erl_interface$(LIBEXT)elseST_EILIB   = $(OBJDIR)/$(LIBPRE)ei$(LIBEXT)ST_ERLLIB  = $(OBJDIR)/$(LIBPRE)erl_interface$(LIBEXT)endifMD_EILIB   = $(OBJDIR)/$(LIBPRE)ei_md$(LIBEXT)MDD_EILIB  = $(OBJDIR)/$(LIBPRE)ei_mdd$(LIBEXT)MD_ERLLIB  = $(OBJDIR)/$(LIBPRE)erl_interface_md$(LIBEXT)MDD_ERLLIB = $(OBJDIR)/$(LIBPRE)erl_interface_mdd$(LIBEXT)############################################################################  Specify targets to build###########################################################################ifneq ($(findstring ose,$(TARGET)),ose)EXE_TARGETS = \	$(ERL_CALL)elseEXE_TARGETS = endififeq ($(USING_VC),yes)# Windows targetsTARGETS = \	$(BINDIR) \	$(OBJDIR) \	$(MT_OBJDIR) \	$(MD_OBJDIR) \	$(MDD_OBJDIR) \	$(OBJ_TARGETS) \	$(EXE_TARGETS)OBJ_TARGETS = \	$(MT_EILIB) \	$(MD_EILIB) \	$(MDD_EILIB) \	$(MT_ERLLIB) \	$(MD_ERLLIB) \	$(MDD_ERLLIB)FAKE_TARGETS = \	$(OBJDIR)/erl_fake_prog_mt$(EXE) \	$(OBJDIR)/ei_fake_prog_mt$(EXE) \	$(OBJDIR)/erl_fake_prog_mt_cxx$(EXE) \	$(OBJDIR)/ei_fake_prog_mt_cxx$(EXE) \	$(OBJDIR)/erl_fake_prog_md$(EXE) \	$(OBJDIR)/ei_fake_prog_md$(EXE) \	$(OBJDIR)/erl_fake_prog_cxx_md$(EXE) \	$(OBJDIR)/ei_fake_prog_cxx_md$(EXE) \	$(OBJDIR)/erl_fake_prog_mdd$(EXE) \	$(OBJDIR)/ei_fake_prog_mdd$(EXE) \	$(OBJDIR)/erl_fake_prog_cxx_mdd$(EXE) \	$(OBJDIR)/ei_fake_prog_cxx_mdd$(EXE) \elseifeq ($USING_MINGW,yes)TARGETS = \	$(BINDIR) \	$(OBJDIR) \	$(MD_OBJDIR) \	$(OBJ_TARGETS) \	$(EXE_TARGETS)OBJ_TARGETS = \	$(MD_EILIB) \	$(MD_ERLLIB)FAKE_TARGETS = \	$(OBJDIR)/erl_fake_prog_md$(EXE) \	$(OBJDIR)/ei_fake_prog_md$(EXE) \	$(OBJDIR)/erl_fake_prog_cxx_md$(EXE) \	$(OBJDIR)/ei_fake_prog_cxx_md$(EXE) else# Unix targetsifdef THR_DEFSTARGETS = \	$(BINDIR) \	$(OBJDIR) \	$(ST_OBJDIR) \	$(MT_OBJDIR) \	$(OBJ_TARGETS) \	$(EXE_TARGETS)OBJ_TARGETS = \	$(ST_EILIB) \	$(ST_ERLLIB) \	$(MT_EILIB) \	$(MT_ERLLIB)FAKE_TARGETS = \	$(ST_OBJDIR)/erl_fake_prog_st$(EXE) \	$(ST_OBJDIR)/ei_fake_prog_st$(EXE) \	$(ST_OBJDIR)/erl_fake_prog_cxx_st$(EXE) \	$(ST_OBJDIR)/ei_fake_prog_cxx_st$(EXE) \	$(MT_OBJDIR)/erl_fake_prog_mt$(EXE) \	$(MT_OBJDIR)/ei_fake_prog_mt$(EXE) \	$(MT_OBJDIR)/erl_fake_prog_mt_cxx$(EXE) \	$(MT_OBJDIR)/ei_fake_prog_mt_cxx$(EXE)elseTARGETS = \	$(BINDIR) \	$(OBJDIR) \	$(ST_OBJDIR) \	$(OBJ_TARGETS) \	$(EXE_TARGETS)OBJ_TARGETS = \	$(ST_EILIB) \	$(ST_ERLLIB)FAKE_TARGETS = \	$(ST_OBJDIR)/erl_fake_prog_st$(EXE) \	$(ST_OBJDIR)/ei_fake_prog_st$(EXE) \	$(ST_OBJDIR)/erl_fake_prog_cxx_st$(EXE) \	$(ST_OBJDIR)/ei_fake_prog_cxx_st$(EXE)endifendifendif############################################################################  List all source files############################################################################ FIXME do we need dummy here for XX.h that was needed before??HEADERS = \	../include/ei.h \	../include/ei_connect.h \	../include/eicode.h \	../include/erl_interface.hEISOURCES = \	$(CONNECTSRC) \	$(DECODESRC) \	$(ENCODESRC) \	$(EPMDSRC) \	$(MISCSRC) \	$(REGISTRYSRC)CONNECTSRC = \	connect/ei_connect.c \	connect/ei_resolve.c \	connect/eirecv.c \	connect/send.c \	connect/send_exit.c \	connect/send_reg.cDECODESRC = \	decode/decode_atom.c \	decode/decode_big.c \	decode/decode_bignum.c \	decode/decode_binary.c \	decode/decode_boolean.c \	decode/decode_char.c \	decode/decode_double.c \	decode/decode_fun.c \	decode/decode_intlist.c \	decode/decode_list_header.c \	decode/decode_long.c \	decode/decode_pid.c \	decode/decode_port.c \	decode/decode_ref.c \	decode/decode_skip.c \	decode/decode_string.c \	decode/decode_trace.c \	decode/decode_tuple_header.c \	decode/decode_ulong.c \	decode/decode_version.c \	$(DECODESRC_LONGLONG)ifneq ($(findstring vxworks,$(TARGET)),vxworks)DECODESRC_LONGLONG = \	decode/decode_longlong.c \	decode/decode_ulonglong.celseDECODESRC_LONGLONG =endifENCODESRC = \	encode/encode_atom.c \	encode/encode_bignum.c \	encode/encode_binary.c \	encode/encode_boolean.c \	encode/encode_char.c \	encode/encode_double.c \	encode/encode_fun.c \	encode/encode_list_header.c \	encode/encode_long.c \	encode/encode_pid.c \	encode/encode_port.c \	encode/encode_ref.c \	encode/encode_string.c \	encode/encode_trace.c \	encode/encode_tuple_header.c \	encode/encode_ulong.c \	encode/encode_version.c \	$(ENCODESRC_LONGLONG)ifneq ($(findstring vxworks,$(TARGET)),vxworks)ENCODESRC_LONGLONG = \	encode/encode_longlong.c \	encode/encode_ulonglong.celseENCODESRC_LONGLONG =endifEPMDSRC = \	epmd/epmd_port.c \	epmd/epmd_publish.c \	epmd/epmd_unpublish.cMISCSRC = \	misc/ei_decode_term.c \	misc/ei_format.c \	misc/ei_locking.c \	misc/ei_malloc.c \	misc/ei_portio.c \	misc/ei_printterm.c \	misc/ei_pthreads.c \	misc/ei_trace.c \	misc/ei_x_encode.c \	misc/eimd5.c \	misc/get_type.c \	misc/show_msg.c \	misc/ei_compat.cREGISTRYSRC = \	registry/hash_dohash.c \	registry/hash_foreach.c \	registry/hash_freetab.c \	registry/hash_insert.c \	registry/hash_isprime.c \	registry/hash_lookup.c \	registry/hash_newtab.c \	registry/hash_remove.c \	registry/hash_resize.c \	registry/hash_rlookup.c \	registry/reg_close.c \	registry/reg_delete.c \	registry/reg_dirty.c \	registry/reg_dump.c \	registry/reg_free.c \	registry/reg_get.c \	registry/reg_getf.c \	registry/reg_geti.c \	registry/reg_getp.c \	registry/reg_gets.c \	registry/reg_make.c \	registry/reg_open.c \	registry/reg_purge.c \	registry/reg_resize.c \	registry/reg_restore.c \	registry/reg_set.c \	registry/reg_setf.c \	registry/reg_seti.c \	registry/reg_setp.c \	registry/reg_sets.c \	registry/reg_stat.c \	registry/reg_tabstat.cERLSOURCES = \	legacy/decode_term.c \	legacy/encode_term.c \	legacy/erl_connect.c \	legacy/erl_error.c \	legacy/erl_eterm.c \

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?