Print this page
6665607 Need a SHA256/SHA384/SHA512 implementation optimized for 64-bit x86
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/uts/intel/sha2/Makefile
+++ new/usr/src/uts/intel/sha2/Makefile
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
↓ open down ↓ |
11 lines elided |
↑ open up ↑ |
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 -# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22 +# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 23 # Use is subject to license terms.
24 24 #
25 -#ident "@(#)Makefile 1.3 06/11/02 SMI"
25 +#ident "@(#)Makefile 1.5 08/03/20 SMI"
26 26 #
27 27 # This makefile drives the production of the sha2 crypto kernel module.
28 28 #
29 29 # intel architecture dependent
30 30 #
31 31
32 32 #
33 33 # Path to the base of the uts directory tree (usually /usr/src/uts).
34 34 #
35 35 UTSBASE = ../..
36 +COMDIR = $(COMMONBASE)/crypto/sha2
36 37
37 38 #
38 39 # Define the module and object file sets.
39 40 #
40 41 MODULE = sha2
41 -OBJECTS = $(SHA2_OBJS:%=$(OBJS_DIR)/%)
42 42 LINTS = $(SHA2_OBJS:%.o=$(LINTS_DIR)/%.ln)
43 +SHA2_OBJS_32 =
44 +SHA2_OBJS_64 = sha512-x86_64.o sha256-x86_64.o
45 +SHA2_OBJS += $(SHA2_OBJS_$(CLASS))
46 +OBJECTS = $(SHA2_OBJS:%=$(OBJS_DIR)/%)
43 47 ROOTMODULE = $(ROOT_CRYPTO_DIR)/$(MODULE)
44 48 ROOTLINK = $(ROOT_MISC_DIR)/$(MODULE)
45 49
46 50 #
47 51 # Include common rules.
48 52 #
49 53 include $(UTSBASE)/intel/Makefile.intel
50 54
51 55 #
52 56 # Override defaults
53 57 #
58 +CLEANFILES += sha512-x86_64.s sha256-x86_64.s
54 59
55 -
56 60 #
57 61 # Define targets
58 62 #
59 63 ALL_TARGET = $(BINARY)
60 64 LINT_TARGET = $(MODULE).lint
61 65 INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK)
62 66
63 67 #
64 68 # For now, disable these lint checks; maintainers should endeavor
65 69 # to investigate and remove these for maximum lint coverage.
66 70 # Please do not carry these forward to new Makefiles.
67 71 #
68 72 LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
69 73 LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
70 74 LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
71 75 LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
72 76
73 77 #
74 78 # Default build targets.
75 79 #
76 80 .KEEP_STATE:
77 81
78 82 def: $(DEF_DEPS)
79 83
80 84 all: $(ALL_DEPS)
81 85
82 86 clean: $(CLEAN_DEPS)
83 87
84 88 clobber: $(CLOBBER_DEPS)
85 89
86 90 lint: $(LINT_DEPS)
87 91
88 92 modlintlib: $(MODLINTLIB_DEPS)
89 93
90 94 clean.lint: $(CLEAN_LINT_DEPS)
↓ open down ↓ |
25 lines elided |
↑ open up ↑ |
91 95
92 96 install: $(INSTALL_DEPS)
93 97
94 98 $(ROOTLINK): $(ROOT_MISC_DIR) $(ROOTMODULE)
95 99 -$(RM) $@; ln $(ROOTMODULE) $@
96 100
97 101 #
98 102 # Include common targets.
99 103 #
100 104 include $(UTSBASE)/intel/Makefile.targ
105 +
106 +$(OBJS_DIR)/%.o: %.s
107 + $(COMPILE.s) -o $@ ${@F:.o=.s}
108 + $(POST_PROCESS_O)
109 +
110 +$(OBJS_DIR)/%.ln: %.s
111 + @($(LHEAD) $(LINT.c) ${@F:.ln=.s} $(LTAIL))
112 +
113 +sha512-x86_64.s: $(COMDIR)/amd64/sha512-x86_64.pl
114 + $(PERL) $? $@
115 +
116 +sha256-x86_64.s: $(COMDIR)/amd64/sha512-x86_64.pl
117 + $(PERL) $? $@
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX