VirtualBox

source: vbox/trunk/src/libs/openssl-1.1.1l/Makefile.kmk@ 91772

Last change on this file since 91772 was 91772, checked in by vboxsync, 3 years ago

openssl-1.1.1l: Applied and adjusted our OpenSSL changes to 1.1.1l. bugref:10126

File size: 3.7 KB
Line 
1# $Id: Makefile.kmk 125764 2018-10-12 17:09:46Z michael $
2## @file
3# Sub-Makefile for the OpenSSL base directory.
4#
5
6#
7# Copyright (C) 2006-2020 Oracle Corporation
8#
9# Oracle Corporation confidential
10# All rights reserved
11#
12
13SUB_DEPTH = ../../..
14include $(KBUILD_PATH)/subheader.kmk
15
16# Make sure our Config.kmk is included.
17ifndef VBOX_PATH_CRYPTO
18 include $(PATH_SUB_CURRENT)/Config.kmk
19endif
20
21# Include sub-makefiles.
22include $(PATH_SUB_CURRENT)/crypto/Makefile.kmk
23include $(PATH_SUB_CURRENT)/ssl/Makefile.kmk
24
25# Let kBuild generate the rules.
26include $(FILE_KBUILD_SUB_FOOTER)
27
28
29#
30# How to regenerate the openssl-mangling.h
31#
32openssl-mangling.h openssl-mangling-new.h: $(VBox-libcrypto_1_TARGET) $(VBox-libssl_1_TARGET) FORCE
33 $(RM) -f -- $@
34 $(APPEND_EXT) -tn $@ \
35 '/* $(DOLLAR)Id: $(DOLLAR) */' \
36 "/** @file" \
37 " * Autogenerate symbol mangling header for openssl." \
38 " */" \
39 "" \
40 "/*" \
41 " * Copyright (C) 2011$(if-expr $(date %Y) > 2011,-$(date %Y),) Oracle Corporation" \
42 " *" \
43 " * This file is part of VirtualBox Open Source Edition (OSE), as" \
44 " * available from http://www.virtualbox.org. This file is free software;" \
45 " * you can redistribute it and/or modify it under the terms of the GNU" \
46 " * General Public License (GPL) as published by the Free Software" \
47 " * Foundation, in version 2 as it comes in the \"COPYING\" file of the" \
48 " * VirtualBox OSE distribution. VirtualBox OSE is distributed in the" \
49 " * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind." \
50 " *" \
51 " * The contents of this file may alternatively be used under the terms" \
52 " * of the Common Development and Distribution License Version 1.0" \
53 " * (CDDL) only, as it comes in the \"COPYING.CDDL\" file of the" \
54 " * VirtualBox OSE distribution, in which case the provisions of the" \
55 " * CDDL are applicable instead of those of the GPL." \
56 " *" \
57 " * You may elect to license modified versions of this file under the" \
58 " * terms and conditions of either the GPL or the CDDL or both." \
59 " */" \
60 "" \
61 "#ifndef ___openssl_mangling_h___" \
62 "#define ___openssl_mangling_h___" \
63 "# ifdef VBOX_IN_EXTPACK" \
64 "# define OPENSSL_MANGLER(a_Name) OracleExtPack_ ## a_Name" \
65 "# define OPENSSL_MANGLER_ASM(a_Name) _OracleExtPack_ ## a_Name" \
66 "# else" \
67 "# define OPENSSL_MANGLER(a_Name) VBox_ ## a_Name" \
68 "# define OPENSSL_MANGLER_ASM(a_Name) _VBox_ ## a_Name" \
69 "# endif"
70 nm $(filter-out FORCE, $+) \
71 | $(SED) \
72 -e '/^[[:xdigit:]][[:xdigit:]]* [TSDBC] /!d' \
73 -e '/\.eh$(DOLLAR)/d' \
74 -e 's/^[^ ]* [TSDBC] $(if $(intersects $(KBUILD_TARGET), darwin os2 win),_,)\([[:alpha:]_].*\)/\1/' \
75 -e 's/[[:space:]]*//g' \
76 -e 's/^VBox_//' \
77 | sort \
78 | $(SED) -e 's/^\(.*\)$(DOLLAR)/#ifndef OPENSSL_MANGLE_ASM\n# ifndef \1\n# define \1 OPENSSL_MANGLER(\1)\n# endif\n#else\n# ifndef _\1\n# define _\1 OPENSSL_MANGLER_ASM(\1)\n# endif\n#endif/' --append-text $@
79 $(APPEND_EXT) -n $@ \
80 "#endif" \
81 ""
82
83#
84# Lists unmangled symbols.
85#
86.PHONY: check-openssl-mangling
87check-openssl-mangling: \
88 $(VBox-libcrypto_1_TARGET) \
89 $(VBox-libssl_1_TARGET) \
90 $(VBoxExtPack-libcrypto_1_TARGET) \
91 $(VBoxExtPack-libssl_1_TARGET) FORCE
92 nm $(VBox-libcrypto_1_TARGET) $(VBox-libssl_1_TARGET) \
93 | $(SED) \
94 -e '/^[[:xdigit:]][[:xdigit:]]* [TSDBC] /!d' \
95 -e 's/^[^ ]* [TSDBC] $(if $(intersects $(KBUILD_TARGET), darwin os2 win),_,)\([[:alpha:]_].*\)/\1/' \
96 -e 's/[[:space:]]*//g' \
97 -e '/^VBox_/d' \
98 | sort
99 nm $(VBoxExtPack-libcrypto_1_TARGET) $(VBoxExtPack-libssl_1_TARGET) \
100 | $(SED) \
101 -e '/^[[:xdigit:]][[:xdigit:]]* [TSDBC] /!d' \
102 -e 's/^[^ ]* [TSDBC] $(if $(intersects $(KBUILD_TARGET), darwin os2 win),_,)\([[:alpha:]_].*\)/\1/' \
103 -e 's/[[:space:]]*//g' \
104 -e '/^OracleExtPack_/d' \
105 | sort
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette