Print this page
6662791 Need a SHA1 implementation optimized for 64-bit x86
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/uts/intel/sha1/Makefile
+++ new/usr/src/uts/intel/sha1/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.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
↓ open down ↓ |
13 lines elided |
↑ open up ↑ |
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 22 # uts/intel/sha1/Makefile
23 23 #
24 -# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
24 +# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
25 25 # Use is subject to license terms.
26 26 #
27 -#ident "@(#)Makefile 1.6 06/11/02 SMI"
27 +# ident "@(#)Makefile 1.7 08/03/02 SMI"
28 28 #
29 29 # This makefile drives the production of the sha1 crypto kernel module.
30 30 #
31 31 # intel architecture dependent
32 32 #
33 33
34 34 #
35 35 # Path to the base of the uts directory tree (usually /usr/src/uts).
36 36 #
37 37 UTSBASE = ../..
38 +COMDIR = $(COMMONBASE)/crypto/sha1
38 39
39 40 #
40 41 # Define the module and object file sets.
41 42 #
42 43 MODULE = sha1
43 -OBJECTS = $(SHA1_OBJS:%=$(OBJS_DIR)/%)
44 44 LINTS = $(SHA1_OBJS:%.o=$(LINTS_DIR)/%.ln)
45 +SHA1_OBJS_32 =
46 +SHA1_OBJS_64 = sha1-x86_64.o
47 +SHA1_OBJS += $(SHA1_OBJS_$(CLASS))
48 +OBJECTS = $(SHA1_OBJS:%=$(OBJS_DIR)/%)
45 49 ROOTMODULE = $(ROOT_CRYPTO_DIR)/$(MODULE)
46 50 ROOTLINK = $(ROOT_MISC_DIR)/$(MODULE)
47 51
48 52 #
49 53 # Include common rules.
50 54 #
51 55 include $(UTSBASE)/intel/Makefile.intel
52 56
53 57 #
54 58 # Override defaults
55 59 #
60 +CLEANFILES += sha1-x86_64.s
56 61
57 62 #
58 63 # For now, disable these lint checks; maintainers should endeavor
59 64 # to investigate and remove these for maximum lint coverage.
60 65 # Please do not carry these forward to new Makefiles.
61 66 #
62 67 LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
63 68 LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
64 69
65 70
66 71 #
67 72 # Define targets
68 73 #
69 74 ALL_TARGET = $(BINARY)
70 75 LINT_TARGET = $(MODULE).lint
71 76 INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK)
72 77
73 78 #
74 79 # Default build targets.
75 80 #
76 81 .KEEP_STATE:
77 82
78 83 def: $(DEF_DEPS)
79 84
80 85 all: $(ALL_DEPS)
81 86
82 87 clean: $(CLEAN_DEPS)
83 88
84 89 clobber: $(CLOBBER_DEPS)
85 90
86 91 lint: $(LINT_DEPS)
87 92
88 93 modlintlib: $(MODLINTLIB_DEPS)
89 94
90 95 clean.lint: $(CLEAN_LINT_DEPS)
↓ open down ↓ |
25 lines elided |
↑ open up ↑ |
91 96
92 97 install: $(INSTALL_DEPS)
93 98
94 99 $(ROOTLINK): $(ROOT_MISC_DIR) $(ROOTMODULE)
95 100 -$(RM) $@; ln $(ROOTMODULE) $@
96 101
97 102 #
98 103 # Include common targets.
99 104 #
100 105 include $(UTSBASE)/intel/Makefile.targ
106 +
107 +$(OBJS_DIR)/sha1-x86_64.o: sha1-x86_64.s
108 + $(COMPILE.s) -o $@ ${@F:.o=.s}
109 + $(POST_PROCESS_O)
110 +
111 +$(OBJS_DIR)/sha1-x86_64.ln: sha1-x86_64.s
112 + @($(LHEAD) $(LINT.c) ${@F:.ln=.s} $(LTAIL))
113 +
114 +sha1-x86_64.s: $(COMDIR)/amd64/sha1-x86_64.pl
115 + $(PERL) $? $@
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX