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 (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. 24# 25 26LIBRARY = libsoftcrypto.a 27VERS = .1 28 29include ../Makefile.com 30 31AES_PSM_OBJS = aes_amd64.o aes_intel.o aeskey.o 32ARCFOUR_PSM_OBJS = arcfour-x86_64.o 33BIGNUM_PSM_OBJS = bignum_amd64.o bignum_amd64_asm.o 34 35include $(SRC)/lib/Makefile.lib 36include $(SRC)/lib/Makefile.lib.64 37 38AES_PSM_SRC = $(AES_DIR)/$(MACH64)/aes_amd64.s \ 39 $(AES_DIR)/$(MACH64)/aes_intel.s \ 40 $(AES_DIR)/$(MACH64)/aeskey.c 41ARCFOUR_PSM_SRC = arcfour-x86_64.s 42BIGNUM_PSM_SRC = $(BIGNUM_DIR)/$(MACH64)/bignum_amd64.c \ 43 $(BIGNUM_DIR)/$(MACH64)/bignum_amd64_asm.s 44 45# Sources need to be redefined after Makefile.lib inclusion. 46SRCS = $(AES_SRC) $(ARCFOUR_SRC) $(BIGNUM_SRC) $(BLOWFISH_SRC) \ 47 $(DES_SRC) $(MODES_SRC) $(DH_SRC) $(DSA_SRC) $(RSA_SRC) \ 48 $(PAD_SRC) 49 50SRCDIR = $(SRC)/lib/pkcs11/libsoftcrypto/common 51 52LIBS = $(DYNLIB) $(LINTLIB) 53MAPFILEDIR = ../common 54 55CFLAGS += -xO4 -xcrossfile 56CPPFLAGS += -I$(CRYPTODIR) -I$(UTSDIR) -D_POSIX_PTHREAD_SEMANTICS 57ASFLAGS += $(AS_PICFLAGS) -P -D__STDC__ -D_ASM 58BIGNUM_FLAGS += -DPSR_MUL 59CLEANFILES += arcfour-x86_64.s 60LDLIBS += -lcryptoutil -lc 61LINTFLAGS64 += $(EXTRA_LINT_FLAGS) 62 63.KEEP_STATE: 64 65all: $(LIBS) 66 67lint: $(SRCS) 68 69install: all $(ROOTLIBS64) $(ROOTLINKS64) $(ROOTLINT64) 70 71pics/%.o: $(AES_DIR)/$(MACH64)/%.c 72 $(COMPILE.c) $(AES_FLAGS) -o $@ $< 73 $(POST_PROCESS_O) 74 75pics/%.o: $(AES_DIR)/$(MACH64)/%.s 76 $(COMPILE.s) $(AES_FLAGS) -o $@ $< 77 $(POST_PROCESS_O) 78 79pics/%.o: $(BIGNUM_DIR)/$(MACH64)/%.c 80 $(COMPILE.c) $(BIGNUM_FLAGS) -o $@ $< 81 $(POST_PROCESS_O) 82 83pics/%.o: $(BIGNUM_DIR)/$(MACH64)/%.s 84 $(COMPILE64.s) $(BIGNUM_FLAGS) -o $@ $< 85 $(POST_PROCESS_O) 86 87include ../Makefile.targ 88 89arcfour-x86_64.s: $(ARCFOUR_DIR)/amd64/arcfour-x86_64.pl 90 $(PERL) $? $@ 91 92pics/%.o: arcfour-x86_64.s 93 $(COMPILE64.s) $(ARCFOUR_FLAGS) -o $@ $< 94 $(POST_PROCESS_O) 95