Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 1 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 2 | # Also see "include/polarssl/config.h" |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 3 | |
Paul Bakker | 62f88dc | 2012-05-10 21:26:28 +0000 | [diff] [blame] | 4 | # To compile on MinGW: add "-lws2_32" to LDFLAGS or define WINDOWS in your |
| 5 | # environment |
| 6 | # |
Paul Bakker | 46eb138 | 2011-01-30 17:10:13 +0000 | [diff] [blame] | 7 | CFLAGS += -I../include -D_FILE_OFFSET_BITS=64 -Wall -W -Wdeclaration-after-statement |
Paul Bakker | f1ab0ec | 2012-10-23 12:12:53 +0000 | [diff] [blame] | 8 | OFLAGS = -O2 |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 9 | |
Paul Bakker | c7ffd36 | 2012-04-05 12:08:29 +0000 | [diff] [blame] | 10 | ifdef DEBUG |
| 11 | CFLAGS += -g3 |
| 12 | endif |
| 13 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 14 | # MicroBlaze specific options: |
| 15 | # CFLAGS += -mno-xl-soft-mul -mxl-barrel-shift |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 16 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 17 | # To compile on Plan9: |
| 18 | # CFLAGS += -D_BSD_EXTENSION |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 19 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 20 | # To compile as a shared library: |
Paul Bakker | 9a73632 | 2012-11-14 12:39:52 +0000 | [diff] [blame] | 21 | ifdef SHARED |
| 22 | CFLAGS += -fPIC |
| 23 | endif |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 24 | |
Paul Bakker | ec3a617 | 2014-07-09 10:21:28 +0200 | [diff] [blame] | 25 | SONAME=libpolarssl.so.7 |
Paul Bakker | 33aac37 | 2011-08-13 11:47:41 +0000 | [diff] [blame] | 26 | |
Paul Bakker | ec3a617 | 2014-07-09 10:21:28 +0200 | [diff] [blame] | 27 | DLEXT=so.7 |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 28 | # OSX shared library extension: |
| 29 | # DLEXT=dylib |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 30 | |
Paul Bakker | a585beb | 2011-06-21 08:59:44 +0000 | [diff] [blame] | 31 | # Windows shared library extension: |
Paul Bakker | cd5b529 | 2012-05-10 20:49:10 +0000 | [diff] [blame] | 32 | ifdef WINDOWS |
| 33 | DLEXT=dll |
Paul Bakker | 62f88dc | 2012-05-10 21:26:28 +0000 | [diff] [blame] | 34 | LDFLAGS += -lws2_32 |
Paul Bakker | cd5b529 | 2012-05-10 20:49:10 +0000 | [diff] [blame] | 35 | endif |
Paul Bakker | a585beb | 2011-06-21 08:59:44 +0000 | [diff] [blame] | 36 | |
Manuel Pégourié-Gonnard | 92ac76f | 2013-12-16 17:12:53 +0100 | [diff] [blame] | 37 | OBJS= aes.o aesni.o arc4.o \ |
| 38 | asn1parse.o \ |
Paul Bakker | a9379c0 | 2012-07-04 11:02:11 +0000 | [diff] [blame] | 39 | asn1write.o base64.o bignum.o \ |
Manuel Pégourié-Gonnard | a6916fa | 2014-05-02 15:17:29 +0200 | [diff] [blame] | 40 | blowfish.o camellia.o ccm.o \ |
Paul Bakker | 0e04d0e | 2011-11-27 14:46:59 +0000 | [diff] [blame] | 41 | certs.o cipher.o cipher_wrap.o \ |
Paul Bakker | 6083fd2 | 2011-12-03 21:45:14 +0000 | [diff] [blame] | 42 | ctr_drbg.o debug.o des.o \ |
Paul Bakker | d589a0d | 2013-03-13 16:30:17 +0100 | [diff] [blame] | 43 | dhm.o ecdh.o ecdsa.o \ |
Manuel Pégourié-Gonnard | 32b04c1 | 2013-12-02 15:49:09 +0100 | [diff] [blame] | 44 | ecp.o ecp_curves.o \ |
Paul Bakker | a95919b | 2013-01-16 17:00:05 +0100 | [diff] [blame] | 45 | entropy.o entropy_poll.o \ |
Paul Bakker | 89e80c9 | 2012-03-20 13:50:09 +0000 | [diff] [blame] | 46 | error.o gcm.o havege.o \ |
Manuel Pégourié-Gonnard | 490bdf3 | 2014-01-27 14:03:10 +0100 | [diff] [blame] | 47 | hmac_drbg.o \ |
Paul Bakker | 6083fd2 | 2011-12-03 21:45:14 +0000 | [diff] [blame] | 48 | md.o md_wrap.o md2.o \ |
Paul Bakker | defc0ca | 2014-02-04 17:30:24 +0100 | [diff] [blame] | 49 | md4.o md5.o \ |
Paul Bakker | b076314 | 2013-11-05 11:27:12 +0100 | [diff] [blame] | 50 | memory_buffer_alloc.o net.o \ |
Paul Bakker | c70b982 | 2013-04-07 22:00:46 +0200 | [diff] [blame] | 51 | oid.o \ |
Paul Bakker | f518b16 | 2012-08-23 13:03:18 +0000 | [diff] [blame] | 52 | padlock.o pbkdf2.o pem.o \ |
Paul Bakker | b0c19a4 | 2013-06-24 19:26:38 +0200 | [diff] [blame] | 53 | pkcs5.o pkcs11.o pkcs12.o \ |
Paul Bakker | 1a7550a | 2013-09-15 13:01:22 +0200 | [diff] [blame] | 54 | pk.o pk_wrap.o pkparse.o \ |
Paul Bakker | 747a83a | 2014-02-01 22:50:07 +0100 | [diff] [blame] | 55 | pkwrite.o platform.o ripemd160.o \ |
Paul Bakker | d2681d8 | 2013-06-30 14:49:12 +0200 | [diff] [blame] | 56 | rsa.o sha1.o sha256.o \ |
| 57 | sha512.o ssl_cache.o ssl_cli.o \ |
Paul Bakker | 68884e3 | 2013-01-07 18:20:04 +0100 | [diff] [blame] | 58 | ssl_srv.o ssl_ciphersuites.o \ |
Paul Bakker | 2466d93 | 2013-09-28 14:40:38 +0200 | [diff] [blame] | 59 | ssl_tls.o threading.o timing.o \ |
Paul Bakker | 0f90d7d | 2014-04-30 11:49:44 +0200 | [diff] [blame] | 60 | version.o version_features.o \ |
Paul Bakker | 9556d3d | 2013-09-18 13:50:13 +0200 | [diff] [blame] | 61 | x509.o x509_create.o \ |
| 62 | x509_crl.o x509_crt.o x509_csr.o \ |
| 63 | x509write_crt.o x509write_csr.o \ |
| 64 | xtea.o |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 65 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 66 | .SILENT: |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 67 | |
Paul Bakker | 9a73632 | 2012-11-14 12:39:52 +0000 | [diff] [blame] | 68 | ifndef SHARED |
Paul Bakker | 3783d6d | 2011-07-13 11:25:36 +0000 | [diff] [blame] | 69 | all: static |
Paul Bakker | 9a73632 | 2012-11-14 12:39:52 +0000 | [diff] [blame] | 70 | else |
| 71 | all: shared |
| 72 | endif |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 73 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 74 | static: libpolarssl.a |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 75 | |
Paul Bakker | b076314 | 2013-11-05 11:27:12 +0100 | [diff] [blame] | 76 | shared: libpolarssl.$(DLEXT) libpolarssl.so |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 77 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 78 | libpolarssl.a: $(OBJS) |
| 79 | echo " AR $@" |
Paul Bakker | a585beb | 2011-06-21 08:59:44 +0000 | [diff] [blame] | 80 | $(AR) r $@ $(OBJS) |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 81 | echo " RL $@" |
Paul Bakker | a585beb | 2011-06-21 08:59:44 +0000 | [diff] [blame] | 82 | $(AR) s $@ |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 83 | |
Paul Bakker | b076314 | 2013-11-05 11:27:12 +0100 | [diff] [blame] | 84 | libpolarssl.${DLEXT}: libpolarssl.a |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 85 | echo " LD $@" |
Paul Bakker | 33aac37 | 2011-08-13 11:47:41 +0000 | [diff] [blame] | 86 | $(CC) ${LDFLAGS} -shared -Wl,-soname,$(SONAME) -o $@ $(OBJS) |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 87 | |
Paul Bakker | b076314 | 2013-11-05 11:27:12 +0100 | [diff] [blame] | 88 | libpolarssl.so: libpolarssl.${DLEXT} |
| 89 | echo " LN $@ -> libpolarssl.${DLEXT}" |
| 90 | ln -sf libpolarssl.${DLEXT} $@ |
| 91 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 92 | libpolarssl.dylib: libpolarssl.a |
| 93 | echo " LD $@" |
Paul Bakker | 46eb138 | 2011-01-30 17:10:13 +0000 | [diff] [blame] | 94 | $(CC) ${LDFLAGS} -dynamiclib -o $@ $(OBJS) |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 95 | |
Paul Bakker | b076314 | 2013-11-05 11:27:12 +0100 | [diff] [blame] | 96 | libpolarssl.dll: libpolarssl.a |
| 97 | echo " LD $@" |
| 98 | $(CC) -shared -Wl,-soname,$@ -o $@ $(OBJS) -lws2_32 -lwinmm -lgdi32 |
Paul Bakker | a585beb | 2011-06-21 08:59:44 +0000 | [diff] [blame] | 99 | |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 100 | .c.o: |
Paul Bakker | 96d42da | 2012-04-05 13:22:07 +0000 | [diff] [blame] | 101 | echo " CC $<" |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 102 | $(CC) $(CFLAGS) $(OFLAGS) -c $< |
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 103 | |
| 104 | clean: |
Paul Bakker | 62f88dc | 2012-05-10 21:26:28 +0000 | [diff] [blame] | 105 | ifndef WINDOWS |
Paul Bakker | ad7eca2 | 2010-03-24 06:46:47 +0000 | [diff] [blame] | 106 | rm -f *.o libpolarssl.* |
Paul Bakker | 62f88dc | 2012-05-10 21:26:28 +0000 | [diff] [blame] | 107 | endif |
| 108 | ifdef WINDOWS |
| 109 | del /Q /F *.o libpolarssl.* |
| 110 | endif |