1 # 2 # CDDL HEADER START 3 # 4 # The contents of this file are subject to the terms of the 5 # Common Development and Distribution License (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 22 # 23 # Copyright 2014 Gary Mills 24 # Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. 25 # 26 27 LIBRARY = libsoftcrypto.a 28 VERS = .1 29 30 include ../Makefile.com 31 32 AES_PSM_OBJS = aes_amd64.o aes_intel.o aeskey.o 33 ARCFOUR_PSM_OBJS = arcfour-x86_64.o 34 BIGNUM_PSM_OBJS = bignum_amd64.o bignum_amd64_asm.o 35 36 include $(SRC)/lib/Makefile.lib 37 include $(SRC)/lib/Makefile.lib.64 38 39 CERRWARN += -_gcc=-Wno-type-limits 40 CERRWARN += -_gcc=-Wno-parentheses 41 CERRWARN += -_gcc=-Wno-uninitialized 42 43 AES_PSM_SRC = $(AES_DIR)/$(MACH64)/aes_amd64.s \ 44 $(AES_DIR)/$(MACH64)/aes_intel.s \ 45 $(AES_DIR)/$(MACH64)/aeskey.c 46 ARCFOUR_PSM_SRC = arcfour-x86_64.s 47 BIGNUM_PSM_SRC = $(BIGNUM_DIR)/$(MACH64)/bignum_amd64.c \ 48 $(BIGNUM_DIR)/$(MACH64)/bignum_amd64_asm.s 49 50 # Sources need to be redefined after Makefile.lib inclusion. 51 SRCS = $(AES_SRC) $(ARCFOUR_SRC) $(BIGNUM_SRC) $(BLOWFISH_SRC) \ 52 $(DES_SRC) $(MODES_SRC) $(DH_SRC) $(DSA_SRC) $(RSA_SRC) \ 53 $(PAD_SRC) 54 55 SRCDIR = $(SRC)/lib/pkcs11/libsoftcrypto/common 56 57 LIBS = $(DYNLIB) $(LINTLIB) 58 MAPFILEDIR = ../common 59 60 COPTFLAG = $(ADJUST_OPT2) -_cc=-xO4 -_gcc=-O2 61 COPTFLAG64 = $(ADJUST_OPT2) -_cc=-xO4 -_gcc=-O2 62 CFLAGS += -xcrossfile 63 CPPFLAGS += -I$(CRYPTODIR) -I$(UTSDIR) -D_POSIX_PTHREAD_SEMANTICS 64 ASFLAGS += $(AS_PICFLAGS) -P -D__STDC__ -D_ASM 65 BIGNUM_FLAGS += -DPSR_MUL 66 CLEANFILES += arcfour-x86_64.s 67 LDLIBS += -lcryptoutil -lc 68 LINTFLAGS64 += $(EXTRA_LINT_FLAGS) 69 70 .KEEP_STATE: 71 72 all: $(LIBS) 73 74 lint: $(SRCS) 75 76 install: all $(ROOTLIBS64) $(ROOTLINKS64) $(ROOTLINT64) 77 78 pics/%.o: $(AES_DIR)/$(MACH64)/%.c 79 $(COMPILE.c) $(AES_FLAGS) -o $@ $< 80 $(POST_PROCESS_O) 81 82 pics/%.o: $(AES_DIR)/$(MACH64)/%.s 83 $(COMPILE.s) $(AES_FLAGS) -o $@ $< 84 $(POST_PROCESS_O) 85 86 pics/%.o: $(BIGNUM_DIR)/$(MACH64)/%.c 87 $(COMPILE.c) $(BIGNUM_FLAGS) -o $@ $< 88 $(POST_PROCESS_O) 89 90 pics/%.o: $(BIGNUM_DIR)/$(MACH64)/%.s 91 $(COMPILE64.s) $(BIGNUM_FLAGS) -o $@ $< 92 $(POST_PROCESS_O) 93 94 include ../Makefile.targ 95 96 arcfour-x86_64.s: $(ARCFOUR_DIR)/amd64/arcfour-x86_64.pl 97 $(PERL) $? $@ 98 99 pics/%.o: arcfour-x86_64.s 100 $(COMPILE64.s) $(ARCFOUR_FLAGS) -o $@ $< 101 $(POST_PROCESS_O)