1 2CONFIG ?= DEBUG_EMU 3CFLAGS_DEBUG_ARM = -O0 -gdwarf-2 -arch armv6 4CFLAGS_RELEASE_ARM = -arch armv6 -Os -gdwarf-2 -Wuninitialized -DNDEBUG 5CFLAGS_DEBUG_EMU = -O0 -gdwarf-2 -DDEBUG 6CFLAGS_RELEASE_EMU = -gdwarf-2 -Os -Wuninitialized -DNDEBUG 7 8WFLAGS = -Wno-trigraphs -Werror -Wunused-function \ 9 -Wunused-label -Wunused-variable -Wunknown-pragmas \ 10 -Wmost -Wno-four-char-constants -Wno-unknown-pragmas \ 11 -Wmissing-prototypes 12 13CFLAGS = --std=c99 -pipe \ 14 -fpascal-strings -fasm-blocks -fmessage-length=0 \ 15 $(WFLAGS) $(CFLAGS_$(CONFIG)) 16 17LDFLAGS := -Wl,-dylib -Wl,-dead_strip -Wl,-exported_symbols_list lib/security_asn1.exp 18 19 20 21HEADER_PATHS := . .. ../libDER 22CFLAGS += $(addprefix -I$(include),$(HEADER_PATHS)) 23 24SOURCES = \ 25 lib/oidsattr.c \ 26 lib/oidsalg.c \ 27 lib/SecAsn1Coder.c \ 28 lib/SecAsn1Templates.c \ 29 \ 30 lib/X509Templates.c \ 31 lib/certExtensionTemplates.c \ 32 lib/csrTemplates.c \ 33 lib/keyTemplates.c \ 34 lib/nameTemplates.c \ 35 lib/ocspTemplates.c \ 36 lib/osKeyTemplates.c \ 37 lib/pkcs12Templates.c \ 38 lib/pkcs7Templates.c \ 39 \ 40 lib/nsprPortX.c \ 41 lib/nssUtils.c \ 42 lib/plarena.c \ 43 lib/secErrorStr.c \ 44 \ 45 lib/secasn1d.c \ 46 lib/secasn1e.c \ 47 lib/secasn1u.c \ 48 lib/secport.c 49 50PUBLIC_HEADERS = \ 51 lib/SecAsn1Coder.h \ 52 lib/SecAsn1Templates.h \ 53 lib/SecAsn1Types.h \ 54 lib/oidsattr.h \ 55 lib/oidsalg.h \ 56 lib/oidsbase.h 57 58PRIVATE_HEADERS = \ 59 lib/secasn1t.h \ 60 lib/X509Templates.h \ 61 lib/asn1Templates.h \ 62 lib/certExtensionTemplates.h \ 63 lib/csrTemplates.h \ 64 lib/keyTemplates.h \ 65 lib/nameTemplates.h \ 66 lib/nssUtils.h \ 67 lib/nssilckt.h \ 68 lib/nssilock.h \ 69 lib/nsslocks.h \ 70 lib/ocspTemplates.h \ 71 lib/osKeyTemplates.h \ 72 lib/pkcs7Templates.h \ 73 lib/pkcs12Templates.h \ 74 lib/plarena.h \ 75 lib/prinit.h 76 77INTERNAL_HEADERS = lib/plarenas.h lib/plstr.h lib/prbit.h lib/prcpucfg.h lib/prcvar.h lib/prenv.h \ 78 lib/prerr.h lib/prerror.h lib/prinrval.h lib/prlock.h lib/prlog.h lib/prlong.h lib/prmem.h lib/prmon.h \ 79 lib/protypes.h lib/prthread.h lib/prtime.h lib/prtypes.h lib/prvrsion.h lib/secasn1.h lib/seccomon.h \ 80 lib/secerr.h lib/secport.h 81 82OBJECTS := $(SOURCES:.c=.o) 83 84all: install-headers build 85 86install-headers: $(PUBLIC_HEADERS) $(PRIVATE_HEADERS) $(INTERNAL_HEADERS) 87 @install -d Security 88 @install -d security_asn1 89 @install -m 0444 $(PUBLIC_HEADERS) $(PRIVATE_HEADERS) Security 90 @install -m 0444 $(INTERNAL_HEADERS) security_asn1 91 92build: $(OBJECTS) 93 $(CC) $(CFLAGS) $(LDFLAGS) -dynamiclib -dynamic -compatibility_version 0 -current_version 0 -install_name libasn1.dylib -o libasn1.dylib $(OBJECTS) 94 95clean: 96 @rm -f $(OBJECTS) $(PROGNAME) 97 98tags: $(SOURCES) $(PROG) 99 etags $+ 100 101 102