Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(212)

Side by Side Diff: openssl/Makefile.shared

Issue 9254031: Upgrade chrome's OpenSSL to same version Android ships with. (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/openssl/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « openssl/Makefile.org ('k') | openssl/NEWS » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # 1 #
2 # Helper makefile to link shared libraries in a portable way. 2 # Helper makefile to link shared libraries in a portable way.
3 # This is much simpler than libtool, and hopefully not too error-prone. 3 # This is much simpler than libtool, and hopefully not too error-prone.
4 # 4 #
5 # The following variables need to be set on the command line to build 5 # The following variables need to be set on the command line to build
6 # properly 6 # properly
7 7
8 # CC contains the current compiler. This one MUST be defined 8 # CC contains the current compiler. This one MUST be defined
9 CC=cc 9 CC=cc
10 CFLAGS=$(CFLAG) 10 CFLAGS=$(CFLAG)
11 # LDFLAGS contains flags to be used when temporary object files (when building 11 # LDFLAGS contains flags to be used when temporary object files (when building
12 # shared libraries) are created, or when an application is linked. 12 # shared libraries) are created, or when an application is linked.
13 # SHARED_LDFLAGS contains flags to be used when the shared library is created. 13 # SHARED_LDFLAGS contains flags to be used when the shared library is created.
14 LDFLAGS= 14 LDFLAGS=
15 SHARED_LDFLAGS= 15 SHARED_LDFLAGS=
16 16
17 NM=nm
18
17 # LIBNAME contains just the name of the library, without prefix ("lib" 19 # LIBNAME contains just the name of the library, without prefix ("lib"
18 # on Unix, "cyg" for certain forms under Cygwin...) or suffix (.a, .so, 20 # on Unix, "cyg" for certain forms under Cygwin...) or suffix (.a, .so,
19 # .dll, ...). This one MUST have a value when using this makefile to 21 # .dll, ...). This one MUST have a value when using this makefile to
20 # build shared libraries. 22 # build shared libraries.
21 # For example, to build libfoo.so, you need to do the following: 23 # For example, to build libfoo.so, you need to do the following:
22 #LIBNAME=foo 24 #LIBNAME=foo
23 LIBNAME= 25 LIBNAME=
24 26
25 # APPNAME contains just the name of the application, without suffix ("" 27 # APPNAME contains just the name of the application, without suffix (""
26 # on Unix, ".exe" on Windows, ...). This one MUST have a value when using 28 # on Unix, ".exe" on Windows, ...). This one MUST have a value when using
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 SHLIB_COMPAT="$$SHLIB_COMPAT .$$prev"; \ 86 SHLIB_COMPAT="$$SHLIB_COMPAT .$$prev"; \
85 fi; \ 87 fi; \
86 prev=$$v; \ 88 prev=$$v; \
87 done; \ 89 done; \
88 fi 90 fi
89 91
90 LINK_APP= \ 92 LINK_APP= \
91 ( $(SET_X); \ 93 ( $(SET_X); \
92 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \ 94 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
93 LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$${LDFLAGS:-$(CFLAGS)}"; \ 95 LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$${LDFLAGS:-$(CFLAGS)}"; \
94 LIBPATH=`for x in $$LIBDEPS; do if echo $$x | grep '^ *-L' > /dev/null 2>&1; then echo $$x | sed -e 's/^ *-L//'; fi; done | uniq`; \ 96 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
95 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \ 97 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
96 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \ 98 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
97 $${LDCMD} $${LDFLAGS} -o $${APPNAME:=$(APPNAME)} $(OBJECTS) $${LIBDEPS} ) 99 $${LDCMD} $${LDFLAGS} -o $${APPNAME:=$(APPNAME)} $(OBJECTS) $${LIBDEPS} )
98 100
99 LINK_SO= \ 101 LINK_SO= \
100 ( $(SET_X); \ 102 ( $(SET_X); \
101 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \ 103 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
102 SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \ 104 SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
103 SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \ 105 SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
104 LIBPATH=`for x in $$LIBDEPS; do if echo $$x | grep '^ *-L' > /dev/null 2>&1; then echo $$x | sed -e 's/^ *-L//'; fi; done | uniq`; \ 106 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
105 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \ 107 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
106 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \ 108 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
107 $${SHAREDCMD} $${SHAREDFLAGS} \ 109 $${SHAREDCMD} $${SHAREDFLAGS} \
108 -o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \ 110 -o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
109 $$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \ 111 $$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \
110 ) && $(SYMLINK_SO) 112 ) && $(SYMLINK_SO)
111 113
112 SYMLINK_SO= \ 114 SYMLINK_SO= \
113 if [ -n "$$INHIBIT_SYMLINKS" ]; then :; else \ 115 if [ -n "$$INHIBIT_SYMLINKS" ]; then :; else \
114 prev=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \ 116 prev=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
(...skipping 11 matching lines...) Expand all
126 fi 128 fi
127 129
128 LINK_SO_A= SHOBJECTS="lib$(LIBNAME).a $(LIBEXTRAS)"; $(LINK_SO) 130 LINK_SO_A= SHOBJECTS="lib$(LIBNAME).a $(LIBEXTRAS)"; $(LINK_SO)
129 LINK_SO_O= SHOBJECTS="$(LIBEXTRAS)"; $(LINK_SO) 131 LINK_SO_O= SHOBJECTS="$(LIBEXTRAS)"; $(LINK_SO)
130 132
131 LINK_SO_A_VIA_O= \ 133 LINK_SO_A_VIA_O= \
132 SHOBJECTS=lib$(LIBNAME).o; \ 134 SHOBJECTS=lib$(LIBNAME).o; \
133 ALL=$$ALLSYMSFLAGS; ALLSYMSFLAGS=; NOALLSYMSFLAGS=; \ 135 ALL=$$ALLSYMSFLAGS; ALLSYMSFLAGS=; NOALLSYMSFLAGS=; \
134 ( $(SET_X); \ 136 ( $(SET_X); \
135 ld $(LDFLAGS) -r -o lib$(LIBNAME).o $$ALL lib$(LIBNAME).a $(LIBEXTRAS) ); \ 137 ld $(LDFLAGS) -r -o lib$(LIBNAME).o $$ALL lib$(LIBNAME).a $(LIBEXTRAS) ); \
136 $(LINK_SO) && rm -f $(LIBNAME).o 138 $(LINK_SO) && rm -f lib$(LIBNAME).o
137 139
138 LINK_SO_A_UNPACKED= \ 140 LINK_SO_A_UNPACKED= \
139 UNPACKDIR=link_tmp.$$$$; rm -rf $$UNPACKDIR; mkdir $$UNPACKDIR; \ 141 UNPACKDIR=link_tmp.$$$$; rm -rf $$UNPACKDIR; mkdir $$UNPACKDIR; \
140 (cd $$UNPACKDIR; ar x ../lib$(LIBNAME).a) && \ 142 (cd $$UNPACKDIR; ar x ../lib$(LIBNAME).a) && \
141 ([ -z "$(LIBEXTRAS)" ] || cp $(LIBEXTRAS) $$UNPACKDIR) && \ 143 ([ -z "$(LIBEXTRAS)" ] || cp $(LIBEXTRAS) $$UNPACKDIR) && \
142 SHOBJECTS=$$UNPACKDIR/*.o; \ 144 SHOBJECTS=$$UNPACKDIR/*.o; \
143 $(LINK_SO) && rm -rf $$UNPACKDIR 145 $(LINK_SO) && rm -rf $$UNPACKDIR
144 146
145 DETECT_GNU_LD=(${CC} -Wl,-V /dev/null 2>&1 | grep '^GNU ld' )>/dev/null 147 DETECT_GNU_LD=($(CC) -Wl,-V /dev/null 2>&1 | grep '^GNU ld' )>/dev/null
146 148
147 DO_GNU_SO=$(CALC_VERSIONS); \ 149 DO_GNU_SO=$(CALC_VERSIONS); \
148 SHLIB=lib$(LIBNAME).so; \ 150 SHLIB=lib$(LIBNAME).so; \
149 SHLIB_SUFFIX=; \ 151 SHLIB_SUFFIX=; \
150 ALLSYMSFLAGS='-Wl,--whole-archive'; \ 152 ALLSYMSFLAGS='-Wl,--whole-archive'; \
151 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ 153 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
152 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-son ame=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" 154 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-son ame=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
153 155
154 DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)" 156 DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)"
155 157
156 #This is rather special. It's a special target with which one can link 158 #This is rather special. It's a special target with which one can link
157 #applications without bothering with any features that have anything to 159 #applications without bothering with any features that have anything to
158 #do with shared libraries, for example when linking against static 160 #do with shared libraries, for example when linking against static
159 #libraries. It's mostly here to avoid a lot of conditionals everywhere 161 #libraries. It's mostly here to avoid a lot of conditionals everywhere
160 #else... 162 #else...
161 link_app.: 163 link_app.:
162 $(LINK_APP) 164 $(LINK_APP)
163 165
164 link_o.gnu: 166 link_o.gnu:
165 @ $(DO_GNU_SO); $(LINK_SO_O) 167 @ $(DO_GNU_SO); $(LINK_SO_O)
166 link_a.gnu: 168 link_a.gnu:
167 @ $(DO_GNU_SO); $(LINK_SO_A) 169 @ $(DO_GNU_SO); $(LINK_SO_A)
168 link_app.gnu: 170 link_app.gnu:
169 @ $(DO_GNU_APP); $(LINK_APP) 171 @ $(DO_GNU_APP); $(LINK_APP)
170 172
173 DO_BEOS_SO= SHLIB=lib$(LIBNAME).so; \
174 SHLIB_SUFFIX=; \
175 ALLSYMSFLAGS='-Wl,--whole-archive'; \
176 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
177 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-son ame=$$SHLIB$$SHLIB_SUFFIX"
178
179 link_o.beos:
180 @ $(DO_BEOS_SO); $(LINK_SO_O)
181 link_a.beos:
182 @ $(DO_BEOS_SO); $(LINK_SO_A)
183
171 link_o.bsd: 184 link_o.bsd:
172 » @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \ 185 » @if $(DETECT_GNU_LD); then $(DO_GNU_SO); else \
173 $(CALC_VERSIONS); \ 186 $(CALC_VERSIONS); \
174 SHLIB=lib$(LIBNAME).so; \ 187 SHLIB=lib$(LIBNAME).so; \
175 SHLIB_SUFFIX=; \ 188 SHLIB_SUFFIX=; \
176 LIBDEPS=" "; \ 189 LIBDEPS=" "; \
177 ALLSYMSFLAGS="-Wl,-Bforcearchive"; \ 190 ALLSYMSFLAGS="-Wl,-Bforcearchive"; \
178 NOALLSYMSFLAGS=; \ 191 NOALLSYMSFLAGS=; \
179 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \ 192 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \
180 fi; $(LINK_SO_O) 193 fi; $(LINK_SO_O)
181 link_a.bsd: 194 link_a.bsd:
182 » @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \ 195 » @if $(DETECT_GNU_LD); then $(DO_GNU_SO); else \
183 $(CALC_VERSIONS); \ 196 $(CALC_VERSIONS); \
184 SHLIB=lib$(LIBNAME).so; \ 197 SHLIB=lib$(LIBNAME).so; \
185 SHLIB_SUFFIX=; \ 198 SHLIB_SUFFIX=; \
186 LIBDEPS=" "; \ 199 LIBDEPS=" "; \
187 ALLSYMSFLAGS="-Wl,-Bforcearchive"; \ 200 ALLSYMSFLAGS="-Wl,-Bforcearchive"; \
188 NOALLSYMSFLAGS=; \ 201 NOALLSYMSFLAGS=; \
189 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \ 202 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \
190 fi; $(LINK_SO_A) 203 fi; $(LINK_SO_A)
191 link_app.bsd: 204 link_app.bsd:
192 » @if ${DETECT_GNU_LD}; then $(DO_GNU_APP); else \ 205 » @if $(DETECT_GNU_LD); then $(DO_GNU_APP); else \
193 LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBPATH)"; \ 206 LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBPATH)"; \
194 fi; $(LINK_APP) 207 fi; $(LINK_APP)
195 208
196 # For Darwin AKA Mac OS/X (dyld) 209 # For Darwin AKA Mac OS/X (dyld)
197 # link_o.darwin produces .so, because we let it use dso_dlfcn module, 210 # Originally link_o.darwin produced .so, because it was hard-coded
198 # which has .so extension hard-coded. One can argue that one should 211 # in dso_dlfcn module. At later point dso_dlfcn switched to .dylib
199 # develop special dso module for MacOS X. At least manual encourages 212 # extension in order to allow for run-time linking with vendor-
200 # to use native NSModule(3) API and refers to dlfcn as termporary hack. 213 # supplied shared libraries such as libz, so that link_o.darwin had
214 # to be harmonized with it. This caused minor controversy, because
215 # it was believed that dlopen can't be used to dynamically load
216 # .dylib-s, only so called bundle modules (ones linked with -bundle
217 # flag). The belief seems to be originating from pre-10.4 release,
218 # where dlfcn functionality was emulated by dlcompat add-on. In
219 # 10.4 dlopen was rewritten as native part of dyld and is documented
220 # to be capable of loading both dynamic libraries and bundles. In
221 # order to provide compatibility with pre-10.4 dlopen, modules are
222 # linked with -bundle flag, which makes .dylib extension misleading.
223 # It works, because dlopen is [and always was] extension-agnostic.
224 # Alternative to this heuristic approach is to develop specific
225 # MacOS X dso module relying on whichever "native" dyld interface.
201 link_o.darwin: 226 link_o.darwin:
202 @ $(CALC_VERSIONS); \ 227 @ $(CALC_VERSIONS); \
203 » SHLIB=`expr "$$THIS" : '.*/\([^/\.]*\)\.'`; \ 228 » SHLIB=lib$(LIBNAME); \
204 » SHLIB=$${SHLIB:-lib$(LIBNAME)}; \ 229 » SHLIB_SUFFIX=.dylib; \
205 » SHLIB_SUFFIX=`expr "$$THIS" : '.*\(\.[^\.]*\)$$'`; \
206 » SHLIB_SUFFIX=$${SHLIB_SUFFIX:-.so}; \
207 ALLSYMSFLAGS='-all_load'; \ 230 ALLSYMSFLAGS='-all_load'; \
208 NOALLSYMSFLAGS=''; \ 231 NOALLSYMSFLAGS=''; \
209 » SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS)"; \ 232 » SHAREDFLAGS="$(CFLAGS) `echo $(SHARED_LDFLAGS) | sed s/dynamiclib/bundle /`"; \
210 if [ -n "$(LIBVERSION)" ]; then \ 233 if [ -n "$(LIBVERSION)" ]; then \
211 SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \ 234 SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \
212 fi; \ 235 fi; \
213 if [ -n "$$SHLIB_SOVER_NODOT" ]; then \ 236 if [ -n "$$SHLIB_SOVER_NODOT" ]; then \
214 SHAREDFLAGS="$$SHAREDFLAGS -compatibility_version $$SHLIB_SOVER_ NODOT"; \ 237 SHAREDFLAGS="$$SHAREDFLAGS -compatibility_version $$SHLIB_SOVER_ NODOT"; \
215 fi; \ 238 fi; \
216 $(LINK_SO_O) 239 $(LINK_SO_O)
217 link_a.darwin: 240 link_a.darwin:
218 @ $(CALC_VERSIONS); \ 241 @ $(CALC_VERSIONS); \
219 SHLIB=lib$(LIBNAME); \ 242 SHLIB=lib$(LIBNAME); \
220 SHLIB_SUFFIX=.dylib; \ 243 SHLIB_SUFFIX=.dylib; \
221 ALLSYMSFLAGS='-all_load'; \ 244 ALLSYMSFLAGS='-all_load'; \
222 NOALLSYMSFLAGS=''; \ 245 NOALLSYMSFLAGS=''; \
223 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS)"; \ 246 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS)"; \
224 if [ -n "$(LIBVERSION)" ]; then \ 247 if [ -n "$(LIBVERSION)" ]; then \
225 SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \ 248 SHAREDFLAGS="$$SHAREDFLAGS -current_version $(LIBVERSION)"; \
226 fi; \ 249 fi; \
227 if [ -n "$$SHLIB_SOVER_NODOT" ]; then \ 250 if [ -n "$$SHLIB_SOVER_NODOT" ]; then \
228 SHAREDFLAGS="$$SHAREDFLAGS -compatibility_version $$SHLIB_SOVER_ NODOT"; \ 251 SHAREDFLAGS="$$SHAREDFLAGS -compatibility_version $$SHLIB_SOVER_ NODOT"; \
229 fi; \ 252 fi; \
230 » SHAREDFLAGS="$$SHAREDFLAGS -install_name ${INSTALLTOP}/lib/$$SHLIB${SHLI B_EXT}"; \ 253 » SHAREDFLAGS="$$SHAREDFLAGS -install_name $(INSTALLTOP)/$(LIBDIR)/$$SHLIB $(SHLIB_EXT)"; \
231 $(LINK_SO_A) 254 $(LINK_SO_A)
232 link_app.darwin: # is there run-path on darwin? 255 link_app.darwin: # is there run-path on darwin?
233 $(LINK_APP) 256 $(LINK_APP)
234 257
235 link_o.cygwin: 258 link_o.cygwin:
236 @ $(CALC_VERSIONS); \ 259 @ $(CALC_VERSIONS); \
237 INHIBIT_SYMLINKS=yes; \ 260 INHIBIT_SYMLINKS=yes; \
238 SHLIB=cyg$(LIBNAME); \ 261 SHLIB=cyg$(LIBNAME); \
239 base=-Wl,--enable-auto-image-base; \ 262 base=-Wl,--enable-auto-image-base; \
263 deffile=; \
240 if expr $(PLATFORM) : 'mingw' > /dev/null; then \ 264 if expr $(PLATFORM) : 'mingw' > /dev/null; then \
241 SHLIB=$(LIBNAME)eay32; base=; \ 265 SHLIB=$(LIBNAME)eay32; base=; \
266 if test -f $(LIBNAME)eay32.def; then \
267 deffile=$(LIBNAME)eay32.def; \
268 fi; \
242 fi; \ 269 fi; \
243 SHLIB_SUFFIX=.dll; \ 270 SHLIB_SUFFIX=.dll; \
244 LIBVERSION="$(LIBVERSION)"; \ 271 LIBVERSION="$(LIBVERSION)"; \
245 SHLIB_SOVER=${LIBVERSION:+"-$(LIBVERSION)"}; \ 272 SHLIB_SOVER=${LIBVERSION:+"-$(LIBVERSION)"}; \
246 ALLSYMSFLAGS='-Wl,--whole-archive'; \ 273 ALLSYMSFLAGS='-Wl,--whole-archive'; \
247 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ 274 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
248 » SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base -Wl,-Bsymbolic - Wl,--out-implib,lib$(LIBNAME).dll.a"; \ 275 » SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base $$deffile -Wl,-s ,-Bsymbolic"; \
249 $(LINK_SO_O) 276 $(LINK_SO_O)
277 #for mingw target if def-file is in use dll-name should match library-name
250 link_a.cygwin: 278 link_a.cygwin:
251 @ $(CALC_VERSIONS); \ 279 @ $(CALC_VERSIONS); \
252 INHIBIT_SYMLINKS=yes; \ 280 INHIBIT_SYMLINKS=yes; \
253 » SHLIB=cyg$(LIBNAME); \ 281 » SHLIB=cyg$(LIBNAME); SHLIB_SOVER=-$(LIBVERSION); SHLIB_SUFFIX=.dll; \
282 » dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; extras=; \
254 base=-Wl,--enable-auto-image-base; \ 283 base=-Wl,--enable-auto-image-base; \
255 if expr $(PLATFORM) : 'mingw' > /dev/null; then \ 284 if expr $(PLATFORM) : 'mingw' > /dev/null; then \
256 » » SHLIB=$(LIBNAME)eay32; \ 285 » » case $(LIBNAME) in \
257 » » base=; [ $(LIBNAME) = "crypto" ] && base=-Wl,--image-base,0x630 00000; \ 286 » » » crypto) SHLIB=libeay;; \
287 » » » ssl) SHLIB=ssleay;; \
288 » » esac; \
289 » » SHLIB_SOVER=32; \
290 » » extras="$(LIBNAME).def"; \
291 » » $(PERL) util/mkdef.pl 32 $$SHLIB > $$extras; \
292 » » base=; [ $(LIBNAME) = "crypto" ] && base=-Wl,--image-base,0x6300 0000; \
258 fi; \ 293 fi; \
259 » SHLIB_SUFFIX=.dll; \ 294 » dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
260 » SHLIB_SOVER=-$(LIBVERSION); \ 295 » $(PERL) util/mkrc.pl $$dll_name | \
296 » » $(CROSS_COMPILE)windres -o rc.o; \
297 » extras="$$extras rc.o"; \
261 ALLSYMSFLAGS='-Wl,--whole-archive'; \ 298 ALLSYMSFLAGS='-Wl,--whole-archive'; \
262 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ 299 NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
263 » SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base -Wl,-Bsymbolic - Wl,--out-implib,lib$(LIBNAME).dll.a"; \ 300 » SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base -Wl,-s,-Bsymboli c -Wl,--out-implib,lib$(LIBNAME).dll.a $$extras"; \
264 » [ -f apps/$$SHLIB$$SHLIB_SUFFIX ] && rm apps/$$SHLIB$$SHLIB_SUFFIX; \ 301 » [ -f apps/$$dll_name ] && rm apps/$$dll_name; \
265 » [ -f test/$$SHLIB$$SHLIB_SUFFIX ] && rm test/$$SHLIB$$SHLIB_SUFFIX; \ 302 » [ -f test/$$dll_name ] && rm test/$$dll_name; \
266 $(LINK_SO_A) || exit 1; \ 303 $(LINK_SO_A) || exit 1; \
267 » cp -p $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX apps/; \ 304 » rm $$extras; \
268 » cp -p $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX test/ 305 » cp -p $$dll_name apps/; \
306 » cp -p $$dll_name test/
269 link_app.cygwin: 307 link_app.cygwin:
308 @if expr "$(CFLAGS)" : '.*OPENSSL_USE_APPLINK' > /dev/null; then \
309 LIBDEPS="$(TOP)/crypto/applink.o $${LIBDEPS:-$(LIBDEPS)}"; \
310 export LIBDEPS; \
311 fi; \
270 $(LINK_APP) 312 $(LINK_APP)
271 313
272 link_o.alpha-osf1: 314 link_o.alpha-osf1:
273 » @ if ${DETECT_GNU_LD}; then \ 315 » @ if $(DETECT_GNU_LD); then \
274 $(DO_GNU_SO); \ 316 $(DO_GNU_SO); \
275 else \ 317 else \
276 SHLIB=lib$(LIBNAME).so; \ 318 SHLIB=lib$(LIBNAME).so; \
277 SHLIB_SUFFIX=; \ 319 SHLIB_SUFFIX=; \
278 SHLIB_HIST=`echo "$(LIBCOMPATVERSIONS)" | cut -d';' -f2 | sed -e 's/ */:/'`; \ 320 SHLIB_HIST=`echo "$(LIBCOMPATVERSIONS)" | cut -d';' -f2 | sed -e 's/ */:/'`; \
279 if [ -n "$$SHLIB_HIST" ]; then \ 321 if [ -n "$$SHLIB_HIST" ]; then \
280 SHLIB_HIST="$${SHLIB_HIST}:$(LIBVERSION)"; \ 322 SHLIB_HIST="$${SHLIB_HIST}:$(LIBVERSION)"; \
281 else \ 323 else \
282 SHLIB_HIST="$(LIBVERSION)"; \ 324 SHLIB_HIST="$(LIBVERSION)"; \
283 fi; \ 325 fi; \
284 SHLIB_SOVER=; \ 326 SHLIB_SOVER=; \
285 ALLSYMSFLAGS='-all'; \ 327 ALLSYMSFLAGS='-all'; \
286 NOALLSYMSFLAGS='-none'; \ 328 NOALLSYMSFLAGS='-none'; \
287 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-B,symbolic "; \ 329 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-B,symbolic "; \
288 if [ -n "$$SHLIB_HIST" ]; then \ 330 if [ -n "$$SHLIB_HIST" ]; then \
289 SHAREDFLAGS="$$SHAREDFLAGS -set_version $$SHLIB_HIST"; \ 331 SHAREDFLAGS="$$SHAREDFLAGS -set_version $$SHLIB_HIST"; \
290 fi; \ 332 fi; \
291 fi; \ 333 fi; \
292 $(LINK_SO_O) 334 $(LINK_SO_O)
293 link_a.alpha-osf1: 335 link_a.alpha-osf1:
294 » @ if ${DETECT_GNU_LD}; then \ 336 » @ if $(DETECT_GNU_LD); then \
295 $(DO_GNU_SO); \ 337 $(DO_GNU_SO); \
296 else \ 338 else \
297 SHLIB=lib$(LIBNAME).so; \ 339 SHLIB=lib$(LIBNAME).so; \
298 SHLIB_SUFFIX=; \ 340 SHLIB_SUFFIX=; \
299 SHLIB_HIST=`echo "$(LIBCOMPATVERSIONS)" | cut -d';' -f2 | sed -e 's/ */:/'`; \ 341 SHLIB_HIST=`echo "$(LIBCOMPATVERSIONS)" | cut -d';' -f2 | sed -e 's/ */:/'`; \
300 if [ -n "$$SHLIB_HIST" ]; then \ 342 if [ -n "$$SHLIB_HIST" ]; then \
301 SHLIB_HIST="$${SHLIB_HIST}:$(LIBVERSION)"; \ 343 SHLIB_HIST="$${SHLIB_HIST}:$(LIBVERSION)"; \
302 else \ 344 else \
303 SHLIB_HIST="$(LIBVERSION)"; \ 345 SHLIB_HIST="$(LIBVERSION)"; \
304 fi; \ 346 fi; \
305 SHLIB_SOVER=; \ 347 SHLIB_SOVER=; \
306 ALLSYMSFLAGS='-all'; \ 348 ALLSYMSFLAGS='-all'; \
307 NOALLSYMSFLAGS='-none'; \ 349 NOALLSYMSFLAGS='-none'; \
308 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-B,symbolic "; \ 350 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-B,symbolic "; \
309 if [ -n "$$SHLIB_HIST" ]; then \ 351 if [ -n "$$SHLIB_HIST" ]; then \
310 SHAREDFLAGS="$$SHAREDFLAGS -set_version $$SHLIB_HIST"; \ 352 SHAREDFLAGS="$$SHAREDFLAGS -set_version $$SHLIB_HIST"; \
311 fi; \ 353 fi; \
312 fi; \ 354 fi; \
313 $(LINK_SO_A) 355 $(LINK_SO_A)
314 link_app.alpha-osf1: 356 link_app.alpha-osf1:
315 » @if ${DETECT_GNU_LD}; then \ 357 » @if $(DETECT_GNU_LD); then \
316 $(DO_GNU_APP); \ 358 $(DO_GNU_APP); \
317 else \ 359 else \
318 LDFLAGS="$(CFLAGS) -rpath $(LIBRPATH)"; \ 360 LDFLAGS="$(CFLAGS) -rpath $(LIBRPATH)"; \
319 fi; \ 361 fi; \
320 $(LINK_APP) 362 $(LINK_APP)
321 363
322 link_o.solaris: 364 link_o.solaris:
323 » @ if ${DETECT_GNU_LD}; then \ 365 » @ if $(DETECT_GNU_LD); then \
324 $(DO_GNU_SO); \ 366 $(DO_GNU_SO); \
325 else \ 367 else \
326 $(CALC_VERSIONS); \ 368 $(CALC_VERSIONS); \
327 MINUSZ='-z '; \ 369 MINUSZ='-z '; \
328 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \ 370 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \
329 SHLIB=lib$(LIBNAME).so; \ 371 SHLIB=lib$(LIBNAME).so; \
330 SHLIB_SUFFIX=; \ 372 SHLIB_SUFFIX=; \
331 ALLSYMSFLAGS="$${MINUSZ}allextract"; \ 373 ALLSYMSFLAGS="$${MINUSZ}allextract"; \
332 NOALLSYMSFLAGS="$${MINUSZ}defaultextract"; \ 374 NOALLSYMSFLAGS="$${MINUSZ}defaultextract"; \
333 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -h $$SHLIB$$SHLIB_SOVER $$SHLIB_SUFFIX -Wl,-Bsymbolic"; \ 375 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -h $$SHLIB$$SHLIB_SOVER $$SHLIB_SUFFIX -Wl,-Bsymbolic"; \
334 fi; \ 376 fi; \
335 $(LINK_SO_O) 377 $(LINK_SO_O)
336 link_a.solaris: 378 link_a.solaris:
337 » @ if ${DETECT_GNU_LD}; then \ 379 » @ if $(DETECT_GNU_LD); then \
338 $(DO_GNU_SO); \ 380 $(DO_GNU_SO); \
339 else \ 381 else \
340 $(CALC_VERSIONS); \ 382 $(CALC_VERSIONS); \
341 MINUSZ='-z '; \ 383 MINUSZ='-z '; \
342 » » (${CC} -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \ 384 » » ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \
343 SHLIB=lib$(LIBNAME).so; \ 385 SHLIB=lib$(LIBNAME).so; \
344 SHLIB_SUFFIX=;\ 386 SHLIB_SUFFIX=;\
345 ALLSYMSFLAGS="$${MINUSZ}allextract"; \ 387 ALLSYMSFLAGS="$${MINUSZ}allextract"; \
346 NOALLSYMSFLAGS="$${MINUSZ}defaultextract"; \ 388 NOALLSYMSFLAGS="$${MINUSZ}defaultextract"; \
347 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -h $$SHLIB$$SHLIB_SOVER $$SHLIB_SUFFIX -Wl,-Bsymbolic"; \ 389 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -h $$SHLIB$$SHLIB_SOVER $$SHLIB_SUFFIX -Wl,-Bsymbolic"; \
348 fi; \ 390 fi; \
349 $(LINK_SO_A) 391 $(LINK_SO_A)
350 link_app.solaris: 392 link_app.solaris:
351 » @ if ${DETECT_GNU_LD}; then \ 393 » @ if $(DETECT_GNU_LD); then \
352 $(DO_GNU_APP); \ 394 $(DO_GNU_APP); \
353 else \ 395 else \
354 LDFLAGS="$(CFLAGS) -R $(LIBRPATH)"; \ 396 LDFLAGS="$(CFLAGS) -R $(LIBRPATH)"; \
355 fi; \ 397 fi; \
356 $(LINK_APP) 398 $(LINK_APP)
357 399
358 # OpenServer 5 native compilers used 400 # OpenServer 5 native compilers used
359 link_o.svr3: 401 link_o.svr3:
360 » @ if ${DETECT_GNU_LD}; then \ 402 » @ if $(DETECT_GNU_LD); then \
361 $(DO_GNU_SO); \ 403 $(DO_GNU_SO); \
362 else \ 404 else \
363 $(CALC_VERSIONS); \ 405 $(CALC_VERSIONS); \
364 SHLIB=lib$(LIBNAME).so; \ 406 SHLIB=lib$(LIBNAME).so; \
365 SHLIB_SUFFIX=; \ 407 SHLIB_SUFFIX=; \
366 ALLSYMSFLAGS=''; \ 408 ALLSYMSFLAGS=''; \
367 NOALLSYMSFLAGS=''; \ 409 NOALLSYMSFLAGS=''; \
368 SHAREDFLAGS="$(CFLAGS) -G -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" ; \ 410 SHAREDFLAGS="$(CFLAGS) -G -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" ; \
369 fi; \ 411 fi; \
370 $(LINK_SO_O) 412 $(LINK_SO_O)
371 link_a.svr3: 413 link_a.svr3:
372 » @ if ${DETECT_GNU_LD}; then \ 414 » @ if $(DETECT_GNU_LD); then \
373 $(DO_GNU_SO); \ 415 $(DO_GNU_SO); \
374 else \ 416 else \
375 $(CALC_VERSIONS); \ 417 $(CALC_VERSIONS); \
376 SHLIB=lib$(LIBNAME).so; \ 418 SHLIB=lib$(LIBNAME).so; \
377 SHLIB_SUFFIX=; \ 419 SHLIB_SUFFIX=; \
378 ALLSYMSFLAGS=''; \ 420 ALLSYMSFLAGS=''; \
379 NOALLSYMSFLAGS=''; \ 421 NOALLSYMSFLAGS=''; \
380 SHAREDFLAGS="$(CFLAGS) -G -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" ; \ 422 SHAREDFLAGS="$(CFLAGS) -G -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" ; \
381 fi; \ 423 fi; \
382 $(LINK_SO_A_UNPACKED) 424 $(LINK_SO_A_UNPACKED)
383 link_app.svr3: 425 link_app.svr3:
384 » @${DETECT_GNU_LD} && $(DO_GNU_APP); \ 426 » @$(DETECT_GNU_LD) && $(DO_GNU_APP); \
385 $(LINK_APP) 427 $(LINK_APP)
386 428
387 # UnixWare 7 and OpenUNIX 8 native compilers used 429 # UnixWare 7 and OpenUNIX 8 native compilers used
388 link_o.svr5: 430 link_o.svr5:
389 » @ if ${DETECT_GNU_LD}; then \ 431 » @ if $(DETECT_GNU_LD); then \
390 $(DO_GNU_SO); \ 432 $(DO_GNU_SO); \
391 else \ 433 else \
392 $(CALC_VERSIONS); \ 434 $(CALC_VERSIONS); \
393 SHARE_FLAG='-G'; \ 435 SHARE_FLAG='-G'; \
394 ($(CC) -v 2>&1 | grep gcc) > /dev/null && SHARE_FLAG='-shared'; \ 436 ($(CC) -v 2>&1 | grep gcc) > /dev/null && SHARE_FLAG='-shared'; \
395 SHLIB=lib$(LIBNAME).so; \ 437 SHLIB=lib$(LIBNAME).so; \
396 SHLIB_SUFFIX=; \ 438 SHLIB_SUFFIX=; \
397 ALLSYMSFLAGS=''; \ 439 ALLSYMSFLAGS=''; \
398 NOALLSYMSFLAGS=''; \ 440 NOALLSYMSFLAGS=''; \
399 SHAREDFLAGS="$(CFLAGS) $${SHARE_FLAG} -h $$SHLIB$$SHLIB_SOVER$$S HLIB_SUFFIX"; \ 441 SHAREDFLAGS="$(CFLAGS) $${SHARE_FLAG} -h $$SHLIB$$SHLIB_SOVER$$S HLIB_SUFFIX"; \
400 fi; \ 442 fi; \
401 $(LINK_SO_O) 443 $(LINK_SO_O)
402 link_a.svr5: 444 link_a.svr5:
403 » @ if ${DETECT_GNU_LD}; then \ 445 » @ if $(DETECT_GNU_LD); then \
404 $(DO_GNU_SO); \ 446 $(DO_GNU_SO); \
405 else \ 447 else \
406 $(CALC_VERSIONS); \ 448 $(CALC_VERSIONS); \
407 SHARE_FLAG='-G'; \ 449 SHARE_FLAG='-G'; \
408 » » (${CC} -v 2>&1 | grep gcc) > /dev/null && SHARE_FLAG='-shared'; \ 450 » » ($(CC) -v 2>&1 | grep gcc) > /dev/null && SHARE_FLAG='-shared'; \
409 SHLIB=lib$(LIBNAME).so; \ 451 SHLIB=lib$(LIBNAME).so; \
410 SHLIB_SUFFIX=; \ 452 SHLIB_SUFFIX=; \
411 ALLSYMSFLAGS=''; \ 453 ALLSYMSFLAGS=''; \
412 NOALLSYMSFLAGS=''; \ 454 NOALLSYMSFLAGS=''; \
413 SHAREDFLAGS="$(CFLAGS) $${SHARE_FLAG} -h $$SHLIB$$SHLIB_SOVER$$S HLIB_SUFFIX"; \ 455 SHAREDFLAGS="$(CFLAGS) $${SHARE_FLAG} -h $$SHLIB$$SHLIB_SOVER$$S HLIB_SUFFIX"; \
414 fi; \ 456 fi; \
415 $(LINK_SO_A_UNPACKED) 457 $(LINK_SO_A_UNPACKED)
416 link_app.svr5: 458 link_app.svr5:
417 » @${DETECT_GNU_LD} && $(DO_GNU_APP); \ 459 » @$(DETECT_GNU_LD) && $(DO_GNU_APP); \
418 $(LINK_APP) 460 $(LINK_APP)
419 461
420 link_o.irix: 462 link_o.irix:
421 » @ if ${DETECT_GNU_LD}; then \ 463 » @ if $(DETECT_GNU_LD); then \
422 $(DO_GNU_SO); \ 464 $(DO_GNU_SO); \
423 else \ 465 else \
424 $(CALC_VERSIONS); \ 466 $(CALC_VERSIONS); \
425 SHLIB=lib$(LIBNAME).so; \ 467 SHLIB=lib$(LIBNAME).so; \
426 SHLIB_SUFFIX=; \ 468 SHLIB_SUFFIX=; \
427 MINUSWL=""; \ 469 MINUSWL=""; \
428 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSWL="-Wl,"; \ 470 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSWL="-Wl,"; \
429 ALLSYMSFLAGS="$${MINUSWL}-all"; \ 471 ALLSYMSFLAGS="$${MINUSWL}-all"; \
430 NOALLSYMSFLAGS="$${MINUSWL}-none"; \ 472 NOALLSYMSFLAGS="$${MINUSWL}-none"; \
431 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname,$$S HLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,-B,symbolic"; \ 473 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname,$$S HLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,-B,symbolic"; \
432 fi; \ 474 fi; \
433 $(LINK_SO_O) 475 $(LINK_SO_O)
434 link_a.irix: 476 link_a.irix:
435 » @ if ${DETECT_GNU_LD}; then \ 477 » @ if $(DETECT_GNU_LD); then \
436 $(DO_GNU_SO); \ 478 $(DO_GNU_SO); \
437 else \ 479 else \
438 $(CALC_VERSIONS); \ 480 $(CALC_VERSIONS); \
439 SHLIB=lib$(LIBNAME).so; \ 481 SHLIB=lib$(LIBNAME).so; \
440 SHLIB_SUFFIX=; \ 482 SHLIB_SUFFIX=; \
441 MINUSWL=""; \ 483 MINUSWL=""; \
442 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSWL="-Wl,"; \ 484 ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSWL="-Wl,"; \
443 ALLSYMSFLAGS="$${MINUSWL}-all"; \ 485 ALLSYMSFLAGS="$${MINUSWL}-all"; \
444 NOALLSYMSFLAGS="$${MINUSWL}-none"; \ 486 NOALLSYMSFLAGS="$${MINUSWL}-none"; \
445 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname,$$S HLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,-B,symbolic"; \ 487 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname,$$S HLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,-B,symbolic"; \
446 fi; \ 488 fi; \
447 $(LINK_SO_A) 489 $(LINK_SO_A)
448 link_app.irix: 490 link_app.irix:
449 @LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)"; \ 491 @LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)"; \
450 $(LINK_APP) 492 $(LINK_APP)
451 493
452 # 32-bit PA-RISC HP-UX embeds the -L pathname of libs we link with, so 494 # 32-bit PA-RISC HP-UX embeds the -L pathname of libs we link with, so
453 # we compensate for it with +cdp ../: and +cdp ./:. Yes, these rewrite 495 # we compensate for it with +cdp ../: and +cdp ./:. Yes, these rewrite
454 # rules imply that we can only link one level down in catalog structure, 496 # rules imply that we can only link one level down in catalog structure,
455 # but that's what takes place for the moment of this writing. +cdp option 497 # but that's what takes place for the moment of this writing. +cdp option
456 # was introduced in HP-UX 11.x and applies in 32-bit PA-RISC link 498 # was introduced in HP-UX 11.x and applies in 32-bit PA-RISC link
457 # editor context only [it's simply ignored in other cases, which are all 499 # editor context only [it's simply ignored in other cases, which are all
458 # ELFs by the way]. 500 # ELFs by the way].
459 # 501 #
460 link_o.hpux: 502 link_o.hpux:
461 » @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \ 503 » @if $(DETECT_GNU_LD); then $(DO_GNU_SO); else \
462 $(CALC_VERSIONS); \ 504 $(CALC_VERSIONS); \
463 SHLIB=lib$(LIBNAME).sl; \ 505 SHLIB=lib$(LIBNAME).sl; \
464 expr "$(CFLAGS)" : '.*DSO_DLFCN' > /dev/null && SHLIB=lib$(LIBNAME).so; \ 506 expr "$(CFLAGS)" : '.*DSO_DLFCN' > /dev/null && SHLIB=lib$(LIBNAME).so; \
465 SHLIB_SUFFIX=; \ 507 SHLIB_SUFFIX=; \
466 ALLSYMSFLAGS='-Wl,-Fl'; \ 508 ALLSYMSFLAGS='-Wl,-Fl'; \
467 NOALLSYMSFLAGS=''; \ 509 NOALLSYMSFLAGS=''; \
468 expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload' ; \ 510 expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload' ; \
469 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarni ngs,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+cdp,../:,+cdp,./:"; \ 511 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarni ngs,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+cdp,../:,+cdp,./:"; \
470 fi; \ 512 fi; \
471 rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \ 513 rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \
472 $(LINK_SO_O) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX 514 $(LINK_SO_O) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
473 link_a.hpux: 515 link_a.hpux:
474 » @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \ 516 » @if $(DETECT_GNU_LD); then $(DO_GNU_SO); else \
475 $(CALC_VERSIONS); \ 517 $(CALC_VERSIONS); \
476 SHLIB=lib$(LIBNAME).sl; \ 518 SHLIB=lib$(LIBNAME).sl; \
477 expr $(PLATFORM) : '.*ia64' > /dev/null && SHLIB=lib$(LIBNAME).so; \ 519 expr $(PLATFORM) : '.*ia64' > /dev/null && SHLIB=lib$(LIBNAME).so; \
478 SHLIB_SUFFIX=; \ 520 SHLIB_SUFFIX=; \
479 ALLSYMSFLAGS='-Wl,-Fl'; \ 521 ALLSYMSFLAGS='-Wl,-Fl'; \
480 NOALLSYMSFLAGS=''; \ 522 NOALLSYMSFLAGS=''; \
481 expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload' ; \ 523 expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload' ; \
482 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarni ngs,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+cdp,../:,+cdp,./:"; \ 524 SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -Wl,-B,symbolic,+vnocompatwarni ngs,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+cdp,../:,+cdp,./:"; \
483 fi; \ 525 fi; \
484 rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \ 526 rm -f $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX || :; \
485 $(LINK_SO_A) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX 527 $(LINK_SO_A) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
486 link_app.hpux: 528 link_app.hpux:
487 » @if ${DETECT_GNU_LD}; then $(DO_GNU_APP); else \ 529 » @if $(DETECT_GNU_LD); then $(DO_GNU_APP); else \
488 LDFLAGS="$(CFLAGS) -Wl,+s,+cdp,../:,+cdp,./:,+b,$(LIBRPATH)"; \ 530 LDFLAGS="$(CFLAGS) -Wl,+s,+cdp,../:,+cdp,./:,+b,$(LIBRPATH)"; \
489 fi; \ 531 fi; \
490 $(LINK_APP) 532 $(LINK_APP)
491 533
492 link_o.aix: 534 link_o.aix:
493 @ $(CALC_VERSIONS); \ 535 @ $(CALC_VERSIONS); \
494 OBJECT_MODE=`expr "x$(SHARED_LDFLAGS)" : 'x\-[a-z]*\(64\)'` || :; \ 536 OBJECT_MODE=`expr "x$(SHARED_LDFLAGS)" : 'x\-[a-z]*\(64\)'` || :; \
495 OBJECT_MODE=$${OBJECT_MODE:-32}; export OBJECT_MODE; \ 537 OBJECT_MODE=$${OBJECT_MODE:-32}; export OBJECT_MODE; \
496 SHLIB=lib$(LIBNAME).so; \ 538 SHLIB=lib$(LIBNAME).so; \
497 SHLIB_SUFFIX=; \ 539 SHLIB_SUFFIX=; \
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
542 @ $(CALC_VERSIONS); \ 584 @ $(CALC_VERSIONS); \
543 SHLIB=lib$(LIBNAME); \ 585 SHLIB=lib$(LIBNAME); \
544 SHLIB_SUFFIX=.dylib; \ 586 SHLIB_SUFFIX=.dylib; \
545 $(SYMLINK_SO) 587 $(SYMLINK_SO)
546 symlink.hpux: 588 symlink.hpux:
547 @ $(CALC_VERSIONS); \ 589 @ $(CALC_VERSIONS); \
548 SHLIB=lib$(LIBNAME).sl; \ 590 SHLIB=lib$(LIBNAME).sl; \
549 expr $(PLATFORM) : '.*ia64' > /dev/null && SHLIB=lib$(LIBNAME).so; \ 591 expr $(PLATFORM) : '.*ia64' > /dev/null && SHLIB=lib$(LIBNAME).so; \
550 $(SYMLINK_SO) 592 $(SYMLINK_SO)
551 # The following lines means those specific architectures do no symlinks 593 # The following lines means those specific architectures do no symlinks
552 symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath: 594 symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos :
553 595
554 # Compatibility targets 596 # Compatibility targets
555 link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu 597 link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu
556 link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu 598 link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu
557 link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu 599 link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu
558 symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-share d: symlink.gnu 600 symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-share d: symlink.gnu
559 link_o.bsd-shared: link_o.bsd 601 link_o.bsd-shared: link_o.bsd
560 link_a.bsd-shared: link_a.bsd 602 link_a.bsd-shared: link_a.bsd
561 link_app.bsd-shared: link_app.bsd 603 link_app.bsd-shared: link_app.bsd
562 link_o.darwin-shared: link_o.darwin 604 link_o.darwin-shared: link_o.darwin
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
600 link_app.hpux-shared: link_app.hpux 642 link_app.hpux-shared: link_app.hpux
601 symlink.hpux-shared: symlink.hpux 643 symlink.hpux-shared: symlink.hpux
602 link_o.aix-shared: link_o.aix 644 link_o.aix-shared: link_o.aix
603 link_a.aix-shared: link_a.aix 645 link_a.aix-shared: link_a.aix
604 link_app.aix-shared: link_app.aix 646 link_app.aix-shared: link_app.aix
605 symlink.aix-shared: symlink.aix 647 symlink.aix-shared: symlink.aix
606 link_o.reliantunix-shared: link_o.reliantunix 648 link_o.reliantunix-shared: link_o.reliantunix
607 link_a.reliantunix-shared: link_a.reliantunix 649 link_a.reliantunix-shared: link_a.reliantunix
608 link_app.reliantunix-shared: link_app.reliantunix 650 link_app.reliantunix-shared: link_app.reliantunix
609 symlink.reliantunix-shared: symlink.reliantunix 651 symlink.reliantunix-shared: symlink.reliantunix
652 link_o.beos-shared: link_o.beos
653 link_a.beos-shared: link_a.beos
654 link_app.beos-shared: link_app.gnu
655 symlink.beos-shared: symlink.beos
OLDNEW
« no previous file with comments | « openssl/Makefile.org ('k') | openssl/NEWS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698