makefile.in
来自「OTP是开放电信平台的简称」· IN 代码 · 共 202 行
IN
202 行
# ``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$## Makefile only for Unix and Win32/Cygwin.# include $(ERL_TOP)/make/target.mkinclude $(ERL_TOP)/make/$(TARGET)/otp.mk# ----------------------------------------------------# SSL locations and include options from configure# ----------------------------------------------------SSL_LIBDIR = @SSL_LIBDIR@SSL_INCLUDE = @SSL_INCLUDE@# ----------------------------------------------------# Application version# ----------------------------------------------------include ../vsn.mkVSN=$(SSL_VSN)# ----------------------------------------------------# Commands # ----------------------------------------------------CC = @CC@LD = @LD@SHELL = /bin/shLIBS = @LIBS@# ----------------------------------------------------# Includes and libs# ----------------------------------------------------ALL_CFLAGS = @WFLAGS@ @CFLAGS@ @DEFS@ $(TYPE_FLAGS)TARGET = @host@ifeq ($(TYPE),debug)TYPEMARKER = .debugTYPE_FLAGS = -g -DDEBUG @DEBUG_FLAGS@elseTYPEMARKER =TYPE_FLAGS = -O2endifPRIVDIR = ../privBINDIR = $(PRIVDIR)/bin/$(TARGET)OBJDIR = $(PRIVDIR)/obj/$(TARGET)# ----------------------------------------------------# File suffixes# ----------------------------------------------------exe = @EXEEXT@obj = .@OBJEXT@# ----------------------------------------------------# Release directory specification# ----------------------------------------------------RELSYSDIR = $(RELEASE_PATH)/lib/ssl-$(VSN)# ----------------------------------------------------# Common Macros# ----------------------------------------------------OBJS = $(OBJDIR)/esock$(obj) \ $(OBJDIR)/debuglog$(obj) \ $(OBJDIR)/esock_poll$(obj) \ $(OBJDIR)/esock_osio$(obj) \ $(OBJDIR)/esock_utils$(obj) \ $(OBJDIR)/esock_posix_str$(obj) \ $(OBJDIR)/esock_openssl$(obj)PORT_PROGRAM = $(BINDIR)/ssl_esock$(exe)SKIP_BUILDING_BINARIES := false# Try to be BC for R10ifeq ($(findstring @SSL_,@SSL_DYNAMIC_ONLY@),@SSL_)DYNAMIC_CRYPTO_LIB=yeselseDYNAMIC_CRYPTO_LIB=@SSL_DYNAMIC_ONLY@endififeq ($(DYNAMIC_CRYPTO_LIB),yes)ifneq ($(findstring win32,$(TARGET)),win32)SSL_MAKEFILE = $(OBJDIR)/MakefileelseSSL_MAKEFILE =endifCC_R_FLAG=@CFLAG_RUNTIME_LIBRARY_PATH@ifeq ($(findstring @,$(CC_R_FLAG)),@)# Old erts configure used which hasn't replaced @CFLAG_RUNTIME_LIBRARY_PATH@;# we try our best here instead...ifeq ($(findstring darwin,$(TARGET)),darwin) # darwin: no flagCC_R_FLAG =elseifeq ($(findstring osf,$(TARGET)),osf) # osf1: -Wl,-rpath,CC_R_FLAG = -Wl,-rpath,else # Default: -Wl,-RCC_R_FLAG = -Wl,-Rendifendifendififeq ($(strip $(CC_R_FLAG)),)CC_R_OPT =elseCC_R_OPT = $(CC_R_FLAG)$(SSL_LIBDIR)endifSSL_LINK_LIB=-L$(SSL_LIBDIR) -lssl -lcryptoelse # not dynamic crypto lib (default from R11B-5)NEED_KERBEROS=@SSL_LINK_WITH_KERBEROS@NEED_ZLIB=@SSL_LINK_WITH_ZLIB@SSL_MAKEFILE =CC_R_OPT =SSL_LINK_LIB = $(SSL_LIBDIR)/libssl.a $(SSL_LIBDIR)/libcrypto.a ifeq ($(NEED_KERBEROS),yes)SSL_LINK_LIB += @STATIC_KERBEROS_LIBS@endififeq ($(NEED_ZLIB),yes)SSL_LINK_LIB += @STATIC_ZLIB_LIBS@endifendif# ----------------------------------------------------# Targets# ----------------------------------------------------debug opt: $(OBJDIR) $(BINDIR) $(OBJS) $(PORT_PROGRAM) $(SSL_MAKEFILE)$(OBJDIR): -@mkdir -p $(OBJDIR)$(BINDIR): -@mkdir -p $(BINDIR)$(OBJDIR)/esock_openssl$(obj): esock_openssl.c $(CC) -c -o $@ $(ALL_CFLAGS) $(SSL_INCLUDE) $<$(OBJDIR)/%$(obj): %.c $(CC) -c -o $@ $(ALL_CFLAGS) $<# Unix$(BINDIR)/ssl_esock: $(OBJS) $(CC) $(CC_R_OPT) -o $@ $^ $(LIBS) $(SSL_LINK_LIB)# Win32/Cygwin$(BINDIR)/ssl_esock.exe: $(OBJS) $(LD) -L$(SSL_LIBDIR) -o $@ $^ -lwsock32 -llibeay32 -lssleay32# Unix only, and only when linking statically$(SSL_MAKEFILE): sed -e "s;%BINDIR%;../../bin/$(TARGET);" \ -e "s;%SSL_LIBDIR%;$(SSL_LIBDIR);" \ -e "s;%OBJS;$(OBJS);" \ -e "s;%LIBS%;$(LIBS);" ./Makefile.dist \ > $(OBJDIR)/Makefileclean: rm -f $(PORT_PROGRAM) $(OBJS) core *~ $(SSL_MAKEFILE)docs:# ----------------------------------------------------# Release Target# ---------------------------------------------------- include $(ERL_TOP)/make/otp_release_targets.mkrelease_spec: opt $(INSTALL_DIR) $(RELSYSDIR)/priv/bin $(INSTALL_PROGRAM) $(PORT_PROGRAM) $(RELSYSDIR)/priv/binifneq ($(SSL_MAKEFILE),) $(INSTALL_DIR) $(RELSYSDIR)/priv/obj $(INSTALL_DATA) $(OBJS) $(RELSYSDIR)/priv/obj sed -e "s;%BINDIR%;../bin;" \ -e "s;%SSL_LIBDIR%;$(SSL_LIBDIR);" \ -e "s;%OBJS;$(OBJS);" \ -e "s;%LIBS%;$(LIBS);" ./Makefile.dist \ > $(RELSYSDIR)/priv/obj/Makefileendifrelease_docs_spec:
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?