openssl/ssl/Makefile.in
Richard Levitte 45502bfe19 Always build library object files with shared library cflags
This takes us away from the idea that we know exactly how our static
libraries are going to get used.  Instead, we make them available to
build shareable things with, be it other shared libraries or DSOs.

On the other hand, we also have greater control of when the shared
library cflags.  They will never be used with object files meant got
binaries, such as apps/openssl or test/test*.

With unified, we take this a bit further and prepare for having to
deal with extra cflags specifically to be used with DSOs (dynamic
engines), libraries and binaries (applications).

Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-02-20 16:51:31 +01:00

84 lines
2.3 KiB
Makefile

#
# OpenSSL/ssl/Makefile
#
DIR= ssl
TOP= ..
CC= cc
INCLUDES= -I$(TOP) -I../include
CFLAG=-g
MAKEFILE= Makefile
AR= ar r
CFLAGS= $(INCLUDES) $(CFLAG) $(SHARED_CFLAG)
GENERAL=Makefile README ssl-lib.com install.com
LIB=$(TOP)/libssl.a
SHARED_LIB= libssl$(SHLIB_EXT)
LIBSRC= \
pqueue.c \
statem/statem_srvr.c statem/statem_clnt.c s3_lib.c s3_enc.c record/rec_layer_s3.c \
statem/statem_lib.c s3_cbc.c s3_msg.c \
methods.c t1_lib.c t1_enc.c t1_ext.c \
d1_lib.c record/rec_layer_d1.c d1_msg.c \
statem/statem_dtls.c d1_srtp.c \
ssl_lib.c ssl_cert.c ssl_sess.c \
ssl_ciph.c ssl_stat.c ssl_rsa.c \
ssl_asn1.c ssl_txt.c ssl_init.c ssl_conf.c ssl_mcnf.c \
bio_ssl.c ssl_err.c t1_reneg.c tls_srp.c t1_trce.c ssl_utst.c \
record/ssl3_buffer.c record/ssl3_record.c record/dtls1_bitmap.c \
statem/statem.c
LIBOBJ= \
pqueue.o \
statem/statem_srvr.o statem/statem_clnt.o s3_lib.o s3_enc.o record/rec_layer_s3.o \
statem/statem_lib.o s3_cbc.o s3_msg.o \
methods.o t1_lib.o t1_enc.o t1_ext.o \
d1_lib.o record/rec_layer_d1.o d1_msg.o \
statem/statem_dtls.o d1_srtp.o\
ssl_lib.o ssl_cert.o ssl_sess.o \
ssl_ciph.o ssl_stat.o ssl_rsa.o \
ssl_asn1.o ssl_txt.o ssl_init.o ssl_conf.o ssl_mcnf.o \
bio_ssl.o ssl_err.o t1_reneg.o tls_srp.o t1_trce.o ssl_utst.o \
record/ssl3_buffer.o record/ssl3_record.o record/dtls1_bitmap.o \
statem/statem.o
SRC= $(LIBSRC)
HEADER= ssl_locl.h record/record_locl.h record/record.h statem/statem.h
ALL= $(GENERAL) $(SRC) $(HEADER)
# BSD make and GNU make disagree on where output goes
.c.o:
$(CC) $(CFLAGS) -c $< -o $@
top:
(cd ..; $(MAKE) DIRS=$(DIR) all)
all: shared
lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) || echo Never mind.
@touch lib
shared: lib
if [ -n "$(SHARED_LIBS)" ]; then \
(cd ..; $(MAKE) $(SHARED_LIB)); \
fi
files:
$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
depend:
$(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC)
clean:
rm -f $(LIBOBJ) *.obj lib tags core .pure .nfs* *.old *.bak fluff
rm -f record/*.obj record/lib record/retags record/core \
record/.pure record/.nfs* record/*.old record/*.bak record/fluff
rm -f statem/*.obj statem/lib statem/retags statem/core \
statem/.pure statem/.nfs* statem/*.old statem/*.bak statem/fluff
# DO NOT DELETE THIS LINE -- make depend depends on it.