copy the openssl tests
[AROS-Contrib.git] / development / libs / openssl / mmakefile.src
blob5e62c270512ce01ca9307d956783372c5f5a53d2
1 # Copyright © 2008-2018, The AROS Development Team. All rights reserved.
2 # $Id$
4 include $(SRCDIR)/config/aros-contrib.cfg
6 REPOSITORIES = http://www.openssl.org/source/ \
7  ftp://mirror.switch.ch/mirror/openssl/source/
8 OPENSSL_VERSION=1.1.0h
9 ARCHBASE := openssl-$(OPENSSL_VERSION)
10 OPENSSL_SOURCE := $(PORTSDIR)/openssl/$(ARCHBASE)
11 OPENSSL_BUILD_DIR := $(GENDIR)/$(CURDIR)/$(ARCHBASE)
13 NOWARN_FLAGS := $(NOWARN_FORMAT_SECURITY) $(NOWARN_UNUSED_BUT_SET_VARIABLE) \
14         $(NOWARN_UNUSED_VALUE) $(NOWARN_UNUSED_VARIABLE) \
15         $(NOWARN_MISLEADING_INDENTATION) $(NOWARN_MAYBE_UNINITIALIZED)
16 USER_CFLAGS := $(NOWARN_FLAGS) -DOPENSSL_NO_SECURE_MEMORY
18 OPENSSL_OPTIONS=no-threads no-sse2 no-ssl3
20 #MM- contrib-openssl : contrib-openssl-install contrib-openssl-installtests
21 #MM contrib-openssl-setup : contrib-openssl-fetch 
22 #MM contrib-openssl-configure : contrib-openssl-setup 
23 #MM contrib-openssl-build : contrib-openssl-configure 
24 #MM contrib-openssl-install : contrib-openssl-build 
26 %fetch mmake=contrib-openssl-fetch archive=$(ARCHBASE) destination=$(PORTSDIR)/openssl \
27     location=$(PORTSSOURCEDIR) archive_origins=$(REPOSITORIES) suffixes="tar.gz" \
28     patches_specs=$(ARCHBASE)-aros.diff:$(ARCHBASE):-p1
30 # After patch creation remove diff about test/ssltest.c and include/openssl/e_os2.h
31 # These are sym linked files and would be patched twice. They cannot easily
32 # be excluded without breaking other things
33 %create_patch mmake=contrib-openssl-create-patch \
34     archive=$(ARCHBASE) destination=$(PORTSDIR)/openssl \
35     excludes="fips_aes_data Makefile.org.orig include"
37 $(OPENSSL_BUILD_DIR)/.links-created : $(TOP)/$(CURDIR)/mmakefile
38         @$(RM) $@
39         %mkdir_q dir=$(OPENSSL_BUILD_DIR)
40         @cd $(OPENSSL_SOURCE); \
41         find . -type d -exec mkdir -p $(OPENSSL_BUILD_DIR)/\{\} \;;\
42         find . -type f -exec ln -fs $(OPENSSL_SOURCE)/\{\} $(OPENSSL_BUILD_DIR)/\{\} \;; 
43         @$(TOUCH) $@;
45 #MM
46 contrib-openssl-setup : $(OPENSSL_BUILD_DIR)/.links-created
48 $(OPENSSL_BUILD_DIR)/.build-configured : $(OPENSSL_BUILD_DIR)/.links-created
49         @$(RM) $@
50         @$(ECHO) "Configuring build in         $(subst $(TOP)/,,$(OPENSSL_BUILD_DIR))"
51         @cd $(OPENSSL_BUILD_DIR); \
52         env -i PATH=$(PATH) AROS_CC="$(strip $(CC) $(TARGET_SYSROOT))" AROS_CFLAGS="$(CFLAGS)" AROS_RANLIB="$(RANLIB)" AR="$(AR_PLAIN)" ./Configure "aros-$(AROS_TARGET_CPU)-buildsys" $(OPENSSL_OPTIONS) --prefix=/$(AROS_DIR_DEVELOPER) --openssldir=/$(AROS_DIR_DEVELOPER)/etc/ssl
53         @$(TOUCH) $@;
55 #MM
56 contrib-openssl-configure : $(OPENSSL_BUILD_DIR)/.build-configured
58 $(OPENSSL_BUILD_DIR)/.build-flag : $(OPENSSL_BUILD_DIR)/.build-configured
59         @$(RM) $@
60         @$(ECHO) "Building    OpenSSL..."
61         @cd $(OPENSSL_BUILD_DIR); \
62         env -i PATH=$(PATH) HOME=$(HOME) make
63         @$(TOUCH) $@
65 #MM
66 contrib-openssl-build : $(OPENSSL_BUILD_DIR)/.build-flag
68 $(OPENSSL_BUILD_DIR)/.install-flag : $(OPENSSL_BUILD_DIR)/.build-flag
69         @$(RM) $@
70         @$(ECHO) "Installing    OpenSSL..."
71         @for file in $(OPENSSL_BUILD_DIR)/Makefile; \
72         do \
73                 $(SED) -i -e "s@=/Developer@=$(AROS_DEVELOPER)@" $$file; \
74         done;
75         @cd $(OPENSSL_BUILD_DIR); \
76         env -i PATH=$(PATH) make install
77         for file in $(AROS_DEVELOPER)/etc/ssl/openssl.cnf; \
78         do \
79                 $(SED) -i -e 's@$$dir/certs     @/ENV/SYS/Certificates@' $$file; \
80         done;
81         @$(TOUCH) $@
83 #MM
84 contrib-openssl-install : $(OPENSSL_BUILD_DIR)/.install-flag
86 $(OPENSSL_BUILD_DIR)/.installtest-flag : $(OPENSSL_BUILD_DIR)/.build-flag $(AROS_TESTS)/openssl
87         @$(RM) $@
88         @$(ECHO) "Installing    OpenSSL Tests..."
89         @$(CP) -R $(OPENSSL_BUILD_DIR)/test/* $(AROS_TESTS)/openssl/
90         @$(RM) $(AROS_TESTS)/openssl/*.c
91         @$(RM) $(AROS_TESTS)/openssl/*.h
92         @$(RM) $(AROS_TESTS)/openssl/*.d
93         @$(RM) $(AROS_TESTS)/openssl/*.o
94         @$(RM) $(AROS_TESTS)/openssl/generate_buildtest.pl
95         @$(RM) $(AROS_TESTS)/openssl/generate_ssl_test.pl
96         @$(RM) $(AROS_TESTS)/openssl/*.info
97         @$(TOUCH) $@
99 $(AROS_TESTS)/openssl:
100         %mkdir_q dir="$@"
103 contrib-openssl-installtests : $(OPENSSL_BUILD_DIR)/.installtest-flag