diff options
Diffstat (limited to 'lib/ic/c_src/Makefile.in')
-rw-r--r-- | lib/ic/c_src/Makefile.in | 160 |
1 files changed, 160 insertions, 0 deletions
diff --git a/lib/ic/c_src/Makefile.in b/lib/ic/c_src/Makefile.in new file mode 100644 index 0000000000..6eef7827b9 --- /dev/null +++ b/lib/ic/c_src/Makefile.in @@ -0,0 +1,160 @@ +# +# %CopyrightBegin% +# +# Copyright Ericsson AB 1998-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 +include $(ERL_TOP)/make/$(TARGET)/otp.mk + +CC = @CC@ +LIBS = @LIBS@ + +LIBDIR = ../priv/lib/$(TARGET) +OBJDIR = ../priv/obj/$(TARGET) +INCDIR = ../include +ERL_INTERFACE_FLAGS = \ + -I$(ERL_TOP)/lib/erl_interface/include \ + -I$(ERL_TOP)/lib/erl_interface/src + +# ---------------------------------------------------- +# Application version +# ---------------------------------------------------- +include ../vsn.mk +VSN=$(IC_VSN) + +# ---------------------------------------------------- +# Release directory specification +# ---------------------------------------------------- +RELSYSDIR = $(RELEASE_PATH)/lib/ic-$(VSN) + +# ---------------------------------------------------- +# File Specs +# ---------------------------------------------------- + +IDL_FILES = \ + $(INCDIR)/erlang.idl + +ifeq ($(findstring win32,$(TARGET)),win32) +USING_MINGW=@MIXED_CYGWIN_MINGW@ +ifeq ($(USING_MINGW),yes) +AR_OUT = rcv +CC_FLAGS = +LIBRARY = $(LIBDIR)/libic.a +SKIP_BUILDING_BINARIES := false +else +LIBRARY = $(LIBDIR)/ic.lib +AR_OUT = -out: +CC_FLAGS = -MT +endif +ifeq ($(HOST_OS),) +HOST_OS := $(shell $(ERL_TOP)/erts/autoconf/config.guess) +endif +ifeq ($(findstring solaris,$(HOST_OS)),solaris) +SKIP_BUILDING_BINARIES := true +endif +else +AR_OUT = rcv +CC_FLAGS = @DED_CFLAGS@ +LIBRARY = $(LIBDIR)/libic.a +SKIP_BUILDING_BINARIES := false +endif + +C_FILES = \ + ic.c \ + ic_tmo.c \ + oe_ei_encode_version.c \ + oe_ei_encode_long.c \ + oe_ei_encode_ulong.c \ + oe_ei_encode_double.c \ + oe_ei_encode_char.c \ + oe_ei_encode_string.c \ + oe_ei_encode_atom.c \ + oe_ei_encode_pid.c \ + oe_ei_encode_port.c \ + oe_ei_encode_ref.c \ + oe_ei_encode_term.c \ + oe_ei_encode_tuple_header.c \ + oe_ei_encode_list_header.c \ + oe_ei_encode_longlong.c \ + oe_ei_encode_ulonglong.c \ + oe_ei_encode_wchar.c \ + oe_ei_encode_wstring.c \ + oe_ei_decode_longlong.c \ + oe_ei_decode_ulonglong.c \ + oe_ei_decode_wchar.c \ + oe_ei_decode_wstring.c \ + oe_ei_code_erlang_binary.c + +H_FILES = $(INCDIR)/ic.h + +OBJ_FILES= $(C_FILES:%.c=$(OBJDIR)/%.o) + +ALL_CFLAGS = @CFLAGS@ @DEFS@ -I$(INCDIR) $(ERL_INTERFACE_FLAGS) $(CFLAGS) + +# ---------------------------------------------------- +# Targets +# ---------------------------------------------------- + +ifeq ($(SKIP_BUILDING_BINARIES), true) +debug opt: +else +debug opt: $(LIBRARY) +endif + +clean: + rm -f $(LIBRARY) $(OBJ_FILES) + rm -f core *~ + +docs: + +# ---------------------------------------------------- +# Special Build Targets +# ---------------------------------------------------- + +$(OBJDIR): + -mkdir -p $(OBJDIR) + +$(LIBDIR): + -mkdir -p $(LIBDIR) + +$(LIBRARY): $(OBJDIR) $(LIBDIR) $(OBJ_FILES) + -$(AR) $(AR_OUT) $@ $(OBJ_FILES) + -$(RANLIB) $@ + +$(OBJDIR)/%.o: %.c + $(CC) $(CC_FLAGS) -c -o $@ $(ALL_CFLAGS) $< + +# ---------------------------------------------------- +# Release Target +# ---------------------------------------------------- +include $(ERL_TOP)/make/otp_release_targets.mk + +release_spec: opt + $(INSTALL_DIR) $(RELSYSDIR)/c_src + $(INSTALL_DIR) $(RELSYSDIR)/include + $(INSTALL_DIR) $(RELSYSDIR)/priv/lib + $(INSTALL_DATA) ic.c ic_tmo.c $(RELSYSDIR)/c_src + $(INSTALL_DATA) $(IDL_FILES) $(H_FILES) $(RELSYSDIR)/include + $(INSTALL_DATA) $(LIBRARY) $(RELSYSDIR)/priv/lib + +release_docs_spec: + + + + + + |