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.
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.
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]
23 # Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
26 LIBRARY
= libsoftcrypto.a
29 include ..
/Makefile.com
31 AES_PSM_OBJS
= aes_amd64.o aes_intel.o aeskey.o
32 ARCFOUR_PSM_OBJS
= arcfour-x86_64.o
33 BIGNUM_PSM_OBJS
= bignum_amd64.o bignum_amd64_asm.o
35 include $(SRC
)/lib
/Makefile.lib
36 include $(SRC
)/lib
/Makefile.lib
.64
38 CERRWARN
+= -Wno-type-limits
39 CERRWARN
+= -Wno-parentheses
40 CERRWARN
+= -Wno-uninitialized
42 AES_PSM_SRC
= $(AES_DIR
)/$(MACH64
)/aes_amd64.s \
43 $(AES_DIR
)/$(MACH64
)/aes_intel.s \
44 $(AES_DIR
)/$(MACH64
)/aeskey.c
45 ARCFOUR_PSM_SRC
= arcfour-x86_64.s
46 BIGNUM_PSM_SRC
= $(BIGNUM_DIR
)/$(MACH64
)/bignum_amd64.c \
47 $(BIGNUM_DIR
)/$(MACH64
)/bignum_amd64_asm.s
49 # Sources need to be redefined after Makefile.lib inclusion.
50 SRCS
= $(AES_SRC
) $(ARCFOUR_SRC
) $(BIGNUM_SRC
) $(BLOWFISH_SRC
) \
51 $(DES_SRC
) $(MODES_SRC
) $(DH_SRC
) $(DSA_SRC
) $(RSA_SRC
) \
54 SRCDIR
= $(SRC
)/lib
/pkcs11
/libsoftcrypto
/common
57 MAPFILEDIR
= ..
/common
59 CFLAGS
+= -fno-strict-aliasing \
61 -fno-optimize-sibling-calls \
63 CPPFLAGS
+= -I
$(CRYPTODIR
) -I
$(UTSDIR
) -D_POSIX_PTHREAD_SEMANTICS
64 CPPFLAGS
+= -I
$(SRCTOP
)/include
65 ASFLAGS
+= $(AS_PICFLAGS
) -D_ASM
66 BIGNUM_FLAGS
+= -DPSR_MUL
67 CLEANFILES
+= arcfour-x86_64.s
68 LDLIBS
+= -lcryptoutil
-lc
75 install: all $(ROOTLIBS64
) $(ROOTLINKS64
)
77 pics
/%.o
: $(AES_DIR
)/$(MACH64
)/%.c
78 $(COMPILE.c
) $(AES_FLAGS
) -o
$@
$<
81 pics
/%.o
: $(AES_DIR
)/$(MACH64
)/%.s
82 $(COMPILE.s
) $(AES_FLAGS
) -o
$@
$<
85 pics
/%.o
: $(BIGNUM_DIR
)/$(MACH64
)/%.c
86 $(COMPILE.c
) $(BIGNUM_FLAGS
) -o
$@
$<
89 pics
/%.o
: $(BIGNUM_DIR
)/$(MACH64
)/%.s
90 $(COMPILE64.s
) $(BIGNUM_FLAGS
) -o
$@
$<
93 include ..
/Makefile.targ
95 arcfour-x86_64.s
: $(ARCFOUR_DIR
)/amd64
/arcfour-x86_64.pl
98 pics
/%.o
: arcfour-x86_64.s
99 $(COMPILE64.s
) $(ARCFOUR_FLAGS
) -o
$@
$<