| 
									
										
										
										
											2016-01-30 06:33:10 +08:00
										 |  |  | LIBS=libcrypto libssl | 
					
						
							|  |  |  | ORDINALS[libcrypto]=crypto | 
					
						
							|  |  |  | ORDINALS[libssl]=ssl | 
					
						
							| 
									
										
										
										
											2016-06-30 04:59:50 +08:00
										 |  |  | INCLUDE[libcrypto]=. crypto/include include | 
					
						
							|  |  |  | INCLUDE[libssl]=. include | 
					
						
							| 
									
										
										
										
											2016-01-30 06:33:10 +08:00
										 |  |  | DEPEND[libssl]=libcrypto | 
					
						
							| 
									
										
										
										
											2016-01-30 12:45:29 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-06-14 04:01:08 +08:00
										 |  |  | # Empty DEPEND "indices" means the dependencies are expected to be built | 
					
						
							|  |  |  | # unconditionally before anything else. | 
					
						
							|  |  |  | DEPEND[]=include/openssl/opensslconf.h crypto/include/internal/bn_conf.h \ | 
					
						
							|  |  |  |          crypto/include/internal/dso_conf.h | 
					
						
							|  |  |  | DEPEND[include/openssl/opensslconf.h]=configdata.pm | 
					
						
							|  |  |  | GENERATE[include/openssl/opensslconf.h]=include/openssl/opensslconf.h.in | 
					
						
							|  |  |  | DEPEND[crypto/include/internal/bn_conf.h]=configdata.pm | 
					
						
							|  |  |  | GENERATE[crypto/include/internal/bn_conf.h]=crypto/include/internal/bn_conf.h.in | 
					
						
							|  |  |  | DEPEND[crypto/include/internal/dso_conf.h]=configdata.pm | 
					
						
							|  |  |  | GENERATE[crypto/include/internal/dso_conf.h]=crypto/include/internal/dso_conf.h.in | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-01-30 12:45:29 +08:00
										 |  |  | IF[{- $config{target} =~ /^Cygwin/ -}] | 
					
						
							|  |  |  |  SHARED_NAME[libcrypto]=cygcrypto-{- $config{shlib_major}.".".$config{shlib_minor} -} | 
					
						
							|  |  |  |  SHARED_NAME[libssl]=cygssl-{- $config{shlib_major}.".".$config{shlib_minor} -} | 
					
						
							|  |  |  | ELSIF[{- $config{target} =~ /^mingw/ -}] | 
					
						
							| 
									
										
											  
											
												Big rename fest of MingW shared libraries
So far, MingW shared libraries were named like this
  libeay32.dll + libeay32.dll.a
  ssleay32.dll + ssleay32.dll.a
That naming scheme is antiquated, a reminicense of SSLeay.  We're
therefore changing the scheme to something that's more like the rest
of OpenSSL.
There are two factors to remember:
  - Windows libraries have no recorded SOvers, which means that the
    shared library version must be encoded in the name.  According to
    some, it's unwise to encode extra periods in a Windows file name,
    so we convert version number periods to underscores.
  - MingW has multilib ability.  However, DLLs need to reside with the
    binaries that use them, so to allow both 32-bit and 64-bit DLLs to
    reside in the same place, we add '-x64' in the name of the 64-bit
    ones.
The resulting name scheme (for SOver 1.1) is this:
  on x86:
  libcrypto-1_1.dll + libcrypto.dll.a
  libssl-1_1.dll + libssl.dll.a
  on x86_64:
  libcrypto-1_1-x64.dll + libcrypto.dll.a
  libssl-1_1-x64.dll + libssl.dll.a
An observation is that the import lib is the same for both
architectures.  Not to worry, though, as they will be installed in
PREFIX/lib/ for x86 and PREFIX/lib64/ for x86_64.
As a side effect, MingW got its own targets in Makefile.shared.
link_dso.mingw-shared and link_app.mingw-shared are aliases for the
corresponding cygwin-shared targets.  link_shlib.mingw-shared is,
however, a target separated from the cygwin one.
Reviewed-by: Andy Polyakov <appro@openssl.org>
											
										 
											2016-02-17 03:37:28 +08:00
										 |  |  |  SHARED_NAME[libcrypto]=libcrypto-{- $config{shlib_major}."_".$config{shlib_minor} -}{- $config{target} eq "mingw64" ? "-x64" : "" -} | 
					
						
							|  |  |  |  SHARED_NAME[libssl]=libssl-{- $config{shlib_major}."_".$config{shlib_minor} -}{- $config{target} eq "mingw64" ? "-x64" : "" -} | 
					
						
							| 
									
										
										
										
											2016-03-06 03:02:05 +08:00
										 |  |  | ELSIF[{- $config{target} =~ /^VC-/ -}] | 
					
						
							| 
									
										
										
										
											2016-03-24 03:33:29 +08:00
										 |  |  |  SHARED_NAME[libcrypto]=libcrypto-{- $config{shlib_major}."_".$config{shlib_minor} -}{- $target{multilib} -} | 
					
						
							|  |  |  |  SHARED_NAME[libssl]=libssl-{- $config{shlib_major}."_".$config{shlib_minor} -}{- $target{multilib} -} | 
					
						
							| 
									
										
										
										
											2016-01-30 12:45:29 +08:00
										 |  |  | ENDIF | 
					
						
							| 
									
										
										
										
											2016-01-30 14:14:58 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | # VMS has a cultural standard where all libraries are prefixed. | 
					
						
							|  |  |  | # For OpenSSL, the choice is 'ossl$' (this prefix was claimed in a | 
					
						
							|  |  |  | # conversation with VSI, Tuesday January 26 2016) | 
					
						
							|  |  |  | # Also, it seems it's usual to have a suffix to the shared library name | 
					
						
							|  |  |  | # for the different pointer sizes that were built for. | 
					
						
							|  |  |  | IF[{- $config{target} =~ /^vms/ -}] | 
					
						
							|  |  |  |  RENAME[libcrypto]=ossl$libcrypto | 
					
						
							|  |  |  |  RENAME[libssl]=ossl$libssl | 
					
						
							|  |  |  |  SHARED_NAME[libcrypto]=ossl$libcrypto_shr{- $target{pointer_size} -} | 
					
						
							|  |  |  |  SHARED_NAME[libssl]=ossl$libssl_shr{- $target{pointer_size} -} | 
					
						
							|  |  |  | ENDIF |