123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- # Makefile for easy-tls example application (rudimentary client and server)
- # $Id: Makefile,v 1.2 2001/09/18 09:15:40 bodo Exp $
- SOLARIS_CFLAGS=-Wall -pedantic -g -O2
- SOLARIS_LIBS=-lxnet
- LINUX_CFLAGS=-Wall -pedantic -g -O2
- LINUX_LIBS=
- auto-all:
- case `uname -s` in \
- SunOS) echo Using SunOS configuration; \
- make SYSCFLAGS="$(SOLARIS_CFLAGS)" SYSLIBS="$(SOLARIS_LIBS)" all;; \
- Linux) echo Using Linux configuration; \
- make SYSCFLAGS="$(LINUX_CFLAGS)" SYSLIBS="$(LINUX_LIBS)" all;; \
- *) echo "unknown system"; exit 1;; \
- esac
- all: test TAGS
- # For adapting this Makefile to a different system, only the following
- # definitions should need customizing:
- OPENSSLDIR=../..
- CC=gcc
- SYSCFLAGS=whatever
- SYSLIBS=whatever
- #############################################################################
- #
- # SSLeay/OpenSSL imports
- #
- # OPENSSLDIR (set above) can be either the directory where OpenSSL is
- # installed or the directory where it was compiled.
- # We rely on having a new OpenSSL release where include files
- # have names like <openssl/ssl.h> (not just <ssl.h>).
- OPENSSLINCLUDES=-I$(OPENSSLDIR)/include
- # libcrypto.a and libssl.a are directly in $(OPENSSLDIR) if this is
- # the compile directory, or in $(OPENSSLDIR)/lib if we use an installed
- # library. With the following definition, we can handle either case.
- OPENSSLLIBS=-L$(OPENSSLDIR) -L$(OPENSSLDIR)/lib -lssl -lcrypto
- #############################################################################
- #
- # Stuff for handling the source files
- #
- SOURCES=easy-tls.c test.c
- HEADERS=easy-tls.h test.h
- DOCSandEXAMPLESetc=Makefile cert.pem cacerts.pem
- EVERYTHING=$(SOURCES) $(HEADERS) $(DOCSandEXAMPLESetc)
- ls: ls-l
- ls-l:
- ls -l $(EVERYTHING)
- # For RCS:
- tag:
- -rcs -n_`date +%y%m%d`: $(EVERYTHING)
- rcs -nMYTAG $(EVERYTHING)
- rcs -nMYTAG: $(EVERYTHING)
- diff:
- -rcsdiff -rMYTAG -u $(EVERYTHING)
- today:
- -rcsdiff -r_`date +%y%m%d` -u $(EVERYTHING)
- ident:
- for a in $(EVERYTHING); do ident $$a; done
- # Distribution .tar:
- easy-tls.tar.gz: $(EVERYTHING)
- tar cvf - $(EVERYTHING) | \
- gzip -9 > easy-tls.tar.gz
- # Working .tar:
- tls.tgz: $(EVERYTHING)
- tar cfv - `find . -type f -a ! -name '*.tgz' -a ! -name '*.tar.gz'` | \
- gzip -9 > tls.tgz
- # For emacs:
- etags: TAGS
- TAGS: $(SOURCES) $(HEADERS)
- -etags $(SOURCES) $(HEADERS)
- #############################################################################
- #
- # Compilation
- #
- # The following definitions are system dependent (and hence defined
- # at the beginning of this Makefile, where they are more easily found):
- ### CC=gcc
- ### SYSCFLAGS=-Wall -pedantic -g -O2
- ### SYSLIBS=-lxnet
- EXTRACFLAGS=-DTLS_APP=\"test.h\"
- # EXTRACFLAGS=-DTLS_APP=\"test.h\" -DDEBUG_TLS
- #
- # The rest shouldn't need to be touched.
- #
- LDFLAGS=$(SYSLIBS) $(OPENSSLLIBS)
- INCLUDES=$(OPENSSLINCLUDES)
- CFLAGS=$(SYSCFLAGS) $(EXTRACFLAGS) $(INCLUDES)
- OBJS=easy-tls.o test.o
- clean:
- @rm -f test
- @rm -f TAGS
- @rm -f *.o
- @rm -f core
- test: $(OBJS)
- $(CC) $(OBJS) $(LDFLAGS) -o test
- test.o: $(HEADERS)
- easy-tls.o: $(HEADERS)
|