From: Roger Shimizu Date: Sun, 12 Jun 2022 15:52:06 +0000 (+0100) Subject: android-platform-external-boringssl (13~preview2-3) unstable; urgency=medium X-Git-Tag: archive/raspbian/13_preview2-7+rpi1~1^2^2^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8a73f5b1394446459a47404545d25f25536e89ee;p=android-platform-external-boringssl.git android-platform-external-boringssl (13~preview2-3) unstable; urgency=medium * Team upload. * d/rules: Move common CPPFLAGS from d/*.mk to d/rules * d/control: Move android-libboringssl-dev from Architecture: all to each arch being supported. [dgit import unpatched android-platform-external-boringssl 13~preview2-3] --- 8a73f5b1394446459a47404545d25f25536e89ee diff --cc debian/.gitlab-ci.yml index 0000000,0000000..514c702 new file mode 100644 --- /dev/null +++ b/debian/.gitlab-ci.yml @@@ -1,0 -1,0 +1,14 @@@ ++pages: ++ image: registry.salsa.debian.org/salsa-ci-team/ci-image-git-buildpackage ++ stage: deploy ++ artifacts: ++ paths: ++ - public ++ expire_in: 1 day ++ except: ++ - tags ++ - pristine-tar ++ - upstream ++ script: ++ - gitlab-ci-git-buildpackage-all ++ - gitlab-ci-aptly diff --cc debian/README.Debian index 0000000,0000000..fd5a11c new file mode 100644 --- /dev/null +++ b/debian/README.Debian @@@ -1,0 -1,0 +1,21 @@@ ++This library is a version of Google's internal OpenSSL fork called ++BoringSSL. This is not the official BoringSSL release, it is the ++version of BoringSSL that is maintained as part of the Android SDK and ++OS. These packages should never be used for anything but the parts of ++the Android SDK that require them. ++ ++We package these chunks separately because we believe it makes it ++easier to maintain. Security updates can happen only in the ++particular package rather than having to build the whole Android SDK ++together as one giant source tree. ++ ++Upstream is already good at providing security fixes for all of the ++various bits, and they maintain quite a few stable releases in ++parallel. Security maintenance for the Android SDK packages will ++mostly be a matter of just including any new patch versions ++(i.e. 8.1.0_r14 vs 8.1.0_r15). ++ ++For more info: ++https://lists.debian.org/debian-security/2016/05/msg00038.html ++ ++ -- Hans-Christoph Steiner , Wed, 28 Feb 2018 11:51:35 +0100 diff --cc debian/android-boringssl.docs index 0000000,0000000..a67d2fc new file mode 100644 --- /dev/null +++ b/debian/android-boringssl.docs @@@ -1,0 -1,0 +1,3 @@@ ++NOTICE ++src/INCORPORATING.md ++src/README.md diff --cc debian/android-boringssl.install index 0000000,0000000..07836ed new file mode 100644 --- /dev/null +++ b/debian/android-boringssl.install @@@ -1,0 -1,0 +1,1 @@@ ++debian/out/bssl-tool usr/bin diff --cc debian/android-boringssl.lintian-overrides index 0000000,0000000..7f810ab new file mode 100644 --- /dev/null +++ b/debian/android-boringssl.lintian-overrides @@@ -1,0 -1,0 +1,12 @@@ ++# Executables from the Android SDK normally each staticly link in all ++# of the libs. That means each executable includes a full copy of all ++# the libs, which is not how Debian works. These libs need to be ++# dynamically linlked in so that just the library can be updated when ++# there is a security fix, instead of requiring all of the executables ++# be recompiled. That said, these libraries do not have a stable ++# interface and were never intended to be used by any other project, ++# only with the internal, Android SDK executables. Therefore, the ++# Android SDK executables use private libraries located in ++# /usr/lib/${DEB_HOST_MULTIARCH}/android ++ ++custom-library-search-path diff --cc debian/android-libboringssl-dev.install index 0000000,0000000..0777c48 new file mode 100755 --- /dev/null +++ b/debian/android-libboringssl-dev.install @@@ -1,0 -1,0 +1,5 @@@ ++#!/usr/bin/dh-exec ++ ++src/include/openssl usr/include/android ++debian/out/libcrypto.so usr/lib/${DEB_HOST_MULTIARCH}/android ++debian/out/libssl.so usr/lib/${DEB_HOST_MULTIARCH}/android diff --cc debian/android-libboringssl.docs index 0000000,0000000..b41e947 new file mode 100644 --- /dev/null +++ b/debian/android-libboringssl.docs @@@ -1,0 -1,0 +1,3 @@@ ++NOTICE ++src/INCORPORATING.md ++src/README.md diff --cc debian/android-libboringssl.install index 0000000,0000000..ff8628b new file mode 100755 --- /dev/null +++ b/debian/android-libboringssl.install @@@ -1,0 -1,0 +1,4 @@@ ++#!/usr/bin/dh-exec ++ ++debian/out/libcrypto.so.* usr/lib/${DEB_HOST_MULTIARCH}/android ++debian/out/libssl.so.* usr/lib/${DEB_HOST_MULTIARCH}/android diff --cc debian/android-libboringssl.lintian-overrides index 0000000,0000000..7f810ab new file mode 100644 --- /dev/null +++ b/debian/android-libboringssl.lintian-overrides @@@ -1,0 -1,0 +1,12 @@@ ++# Executables from the Android SDK normally each staticly link in all ++# of the libs. That means each executable includes a full copy of all ++# the libs, which is not how Debian works. These libs need to be ++# dynamically linlked in so that just the library can be updated when ++# there is a security fix, instead of requiring all of the executables ++# be recompiled. That said, these libraries do not have a stable ++# interface and were never intended to be used by any other project, ++# only with the internal, Android SDK executables. Therefore, the ++# Android SDK executables use private libraries located in ++# /usr/lib/${DEB_HOST_MULTIARCH}/android ++ ++custom-library-search-path diff --cc debian/changelog index 0000000,0000000..682ecca new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,194 @@@ ++android-platform-external-boringssl (13~preview2-3) unstable; urgency=medium ++ ++ * Team upload. ++ * d/rules: Move common CPPFLAGS from d/*.mk to d/rules ++ * d/control: Move android-libboringssl-dev from Architecture: all to ++ each arch being supported. ++ ++ -- Roger Shimizu Mon, 13 Jun 2022 00:52:06 +0900 ++ ++android-platform-external-boringssl (13~preview2-2) unstable; urgency=medium ++ ++ * Team upload. ++ * debian/*.mk: Fix ftbfs for armel. ++ ++ -- Roger Shimizu Tue, 07 Jun 2022 18:35:21 +0900 ++ ++android-platform-external-boringssl (13~preview2-1) unstable; urgency=medium ++ ++ * Team upload. ++ * debian/*.mk: Using the "gnu11" variant means we don't need _XOPEN_SOURCE. ++ Additionally, using C11 makes the faster refcount implementation ++ available. This setting is from upstream. ++ ++ -- Roger Shimizu Mon, 06 Jun 2022 21:09:55 +0900 ++ ++android-platform-external-boringssl (13~preview2-1~exp1) unstable; urgency=medium ++ ++ * Team upload. ++ * New upstream version 13~preview2 ++ * debian/patches: Refresh patches. ++ * debian/sources.mk: Update by script. ++ ++ -- Roger Shimizu Wed, 01 Jun 2022 04:00:31 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-2) unstable; urgency=medium ++ ++ * Team upload. ++ * debian/tests/control: Limit architecture. ++ ++ -- Roger Shimizu Tue, 31 May 2022 01:41:52 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1) unstable; urgency=medium ++ ++ * Team upload. ++ * Upload to unstable. ++ * debian/rules: Build and test only for -arch build. ++ ++ -- Roger Shimizu Mon, 30 May 2022 19:06:02 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp10) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/crypto_test.mk: Fallback to gcc for mips64el. ++ Thanks to Adrian Bunk for fixing this test for mips64el. ++ ++ -- Roger Shimizu Sun, 29 May 2022 16:50:06 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp9) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/control: Update Depends version. ++ * debian/tests/control: Add autopkgtest test. ++ ++ -- Roger Shimizu Sat, 28 May 2022 18:38:29 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp8) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/rules: ++ - Disable building bssl-tools for Hurd. ++ - Add -pie to LDFLAGS to enhance the hardening. ++ * debian/control: ++ - Add android-boringssl package to include the tool. ++ * debian/copyright & debian/source/lintian-overrides: ++ - Adapt with new upstream. ++ ++ -- Roger Shimizu Thu, 26 May 2022 01:00:02 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp7) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/tool_test.mk and debian/rules: ++ - Add bssl-tool to build. ++ * debian/rules: ++ - Still run failing test for mips64el, just ignore the result. ++ ++ -- Roger Shimizu Mon, 23 May 2022 21:01:59 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp6) experimental; urgency=medium ++ ++ * Team upload. ++ * Disable crypto_test for mips64el temporarily. ++ * Split test_support as an independant library. ++ * d/rules: ++ - Make dependency driven makefile rules. ++ ++ -- Roger Shimizu Mon, 16 May 2022 23:23:41 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp5) experimental; urgency=medium ++ ++ * Team upload. ++ * Update eureka.mk and source it in debian/*.mk ++ * d/{crypto,ssl}_test.mk: ++ - Link with atomic for armel. ++ * d/patches: ++ - Update 01 patch to fix x32. ++ ++ -- Roger Shimizu Mon, 16 May 2022 02:25:59 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp4) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/patches: ++ - Update patch to fix sh4 and x32. ++ * Add debian/{crypto,ssl}_test.mk to test built libraries. ++ * d/lib{crypto,ssl}.mk: ++ - Import source list from eureka.mk. ++ ++ -- Roger Shimizu Sun, 15 May 2022 19:24:19 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp3) experimental; urgency=medium ++ ++ * Team upload. ++ * debian/control: Add all little endian Arch, to check the buildd ++ result. ++ ++ -- Roger Shimizu Sun, 15 May 2022 03:27:01 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp2) experimental; urgency=medium ++ ++ * Team upload. ++ * Try to build on new Arch (little endian): ia64, riscv64, sh4, x32 ++ ++ -- Roger Shimizu Sun, 15 May 2022 01:59:06 +0900 ++ ++android-platform-external-boringssl (12.1.0+r5-1~exp1) experimental; urgency=medium ++ ++ * New upstream version 12.1.0+r5 ++ * debian/control: ++ - Fix multiarch issues. ++ - Add ppc64el support. ++ * debian/rules: ++ - Use clang as default compiler. ++ ++ -- Roger Shimizu Sat, 14 May 2022 02:09:14 +0900 ++ ++android-platform-external-boringssl (10.0.0+r36-2~exp1) experimental; urgency=medium ++ ++ * Team upload. ++ ++ [ Hans-Christoph Steiner ] ++ * gitlab-ci: exclude tags, pristine-tar, upstream ++ ++ [ Roger Shimizu ] ++ * debian/control: ++ - Add mips*el to build. ++ ++ -- Roger Shimizu Mon, 11 Jan 2021 03:31:07 +0900 ++ ++android-platform-external-boringssl (10.0.0+r36-1) unstable; urgency=medium ++ ++ * Team upload ++ * New upstream version ++ * Upstream (10.0.0+r36) (Closes: #933865) ++ ++ -- Dhyey Patel Mon, 23 Nov 2020 12:14:17 +0100 ++ ++android-platform-external-boringssl (8.1.0+r23-3) unstable; urgency=medium ++ ++ [ Kai-Chung Yan (殷啟聰) ] ++ * d/copyright: Refer to the Apache-2.0 in the commons-licenses ++ ++ [ Roger Shimizu ] ++ * d/watch: Update rule to get new upstream version ++ ++ [ Hans-Christoph Steiner ] ++ * fix adb crashes on startup on armhf (Closes: #933865) ++ ++ -- Hans-Christoph Steiner Thu, 08 Oct 2020 19:35:08 +0200 ++ ++android-platform-external-boringssl (8.1.0+r23-2) unstable; urgency=medium ++ ++ * Update d/copyright: ++ * Cover all copyright holders (Closes: #905820) ++ * Point the Source to AOSP ++ * Standards-Version => 4.2.1 ++ ++ -- Kai-Chung Yan Fri, 21 Sep 2018 16:43:18 +0800 ++ ++android-platform-external-boringssl (8.1.0+r23-1) unstable; urgency=medium ++ ++ * Initial release (Closes: #823933) ++ ++ -- Kai-Chung Yan Mon, 28 May 2018 19:53:05 +0200 diff --cc debian/clean index 0000000,0000000..92a7cdc new file mode 100644 --- /dev/null +++ b/debian/clean @@@ -1,0 -1,0 +1,1 @@@ ++debian/out/ diff --cc debian/compiler_test.mk index 0000000,0000000..96733bd new file mode 100644 --- /dev/null +++ b/debian/compiler_test.mk @@@ -1,0 -1,0 +1,22 @@@ ++NAME = compiler_test ++ ++SOURCES = \ ++ src/crypto/compiler_test.cc \ ++ src/crypto/test/test_util.cc \ ++ ++OBJECTS = $(SOURCES:.cc=.o) ++ ++CXXFLAGS += -std=gnu++2a ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -lgtest \ ++ -lpthread \ ++ ++build: $(OBJECTS) /usr/lib/$(DEB_HOST_MULTIARCH)/libgtest_main.a ++ mkdir -p debian/out ++ $(CXX) $^ -o debian/out/$(NAME) $(LDFLAGS) ++ ++$(OBJECTS): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/control index 0000000,0000000..5cebf9a new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,88 @@@ ++Source: android-platform-external-boringssl ++Section: libs ++Priority: optional ++Maintainer: Android Tools Maintainers ++Uploaders: Kai-Chung Yan ++Build-Depends: ++ clang [amd64 i386 armel armhf arm64 mipsel mips64el ppc64el riscv64], ++ debhelper-compat (= 12), ++ dh-exec, ++ libgtest-dev, ++Standards-Version: 4.5.0 ++Rules-Requires-Root: no ++Vcs-Git: https://salsa.debian.org/android-tools-team/android-platform-external-boringssl.git ++Vcs-Browser: https://salsa.debian.org/android-tools-team/android-platform-external-boringssl ++Homepage: https://android.googlesource.com/platform/external/boringssl ++ ++Package: android-libboringssl ++Architecture: armel armhf arm64 amd64 i386 ppc64el mipsel mips64el hurd-i386 ia64 kfreebsd-amd64 kfreebsd-i386 riscv64 sh4 x32 ++Multi-Arch: same ++Depends: ${misc:Depends}, ${shlibs:Depends} ++Description: Google's internal fork of OpenSSL for the Android SDK ++ The Android SDK builds against a static version of BoringSSL, ++ Google's internal fork of OpenSSL. This package should never be used ++ for anything but Android SDK packages that already depend on it. ++ . ++ BoringSSL arose because Google used OpenSSL for many years in various ++ ways and, over time, built up a large number of patches that were ++ maintained while tracking upstream OpenSSL. As Google’s product ++ portfolio became more complex, more copies of OpenSSL sprung up and ++ the effort involved in maintaining all these patches in multiple ++ places was growing steadily. ++ . ++ This is the Android AOSP fork of BoringSSL which is designed to be ++ used by Android and its SDK. BoringSSL is only ever statically linked ++ into apps, and pinned to a commit version. Upstream has no official ++ releases of BoringSSL on its own, so it must be included separately ++ for each project that uses it. ++ ++Package: android-libboringssl-dev ++Section: libdevel ++Architecture: armel armhf arm64 amd64 i386 ppc64el mipsel mips64el hurd-i386 ia64 kfreebsd-amd64 kfreebsd-i386 riscv64 sh4 x32 ++Multi-Arch: foreign ++Depends: ${misc:Depends}, ++ android-libboringssl (= ${binary:Version}), ++Description: Google's internal fork of OpenSSL for the Android SDK - devel ++ The Android SDK builds against a static version of BoringSSL, ++ Google's internal fork of OpenSSL. This package should never be used ++ for anything but Android SDK packages that already depend on it. ++ . ++ BoringSSL arose because Google used OpenSSL for many years in various ++ ways and, over time, built up a large number of patches that were ++ maintained while tracking upstream OpenSSL. As Google’s product ++ portfolio became more complex, more copies of OpenSSL sprung up and ++ the effort involved in maintaining all these patches in multiple ++ places was growing steadily. ++ . ++ This is the Android AOSP fork of BoringSSL which is designed to be ++ used by Android and its SDK. BoringSSL is only ever statically linked ++ into apps, and pinned to a commit version. Upstream has no official ++ releases of BoringSSL on its own, so it must be included separately ++ for each project that uses it. ++ . ++ This package contains the development files. ++ ++Package: android-boringssl ++Section: utils ++Architecture: armel armhf arm64 amd64 i386 ppc64el mipsel mips64el ia64 kfreebsd-amd64 kfreebsd-i386 riscv64 sh4 x32 ++Multi-Arch: foreign ++Depends: ${misc:Depends}, ${shlibs:Depends} ++Description: Google's internal fork of OpenSSL for the Android SDK - tool ++ The Android SDK builds against a static version of BoringSSL, ++ Google's internal fork of OpenSSL. This package should never be used ++ for anything but Android SDK packages that already depend on it. ++ . ++ BoringSSL arose because Google used OpenSSL for many years in various ++ ways and, over time, built up a large number of patches that were ++ maintained while tracking upstream OpenSSL. As Google’s product ++ portfolio became more complex, more copies of OpenSSL sprung up and ++ the effort involved in maintaining all these patches in multiple ++ places was growing steadily. ++ . ++ This is the Android AOSP fork of BoringSSL which is designed to be ++ used by Android and its SDK. BoringSSL is only ever statically linked ++ into apps, and pinned to a commit version. Upstream has no official ++ releases of BoringSSL on its own, so it must be included separately ++ for each project that uses it. ++ . ++ This package contains the boringssl command line tool. diff --cc debian/copyright index 0000000,0000000..4d06b4b new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,435 @@@ ++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0 ++Source: https://android.googlesource.com/platform/external/boringssl ++Upstream-Name: BoringSSL ++ ++Files: * ++Copyright: 1998-2011, The OpenSSL Project ++License: OpenSSL and SSLeay ++ ++Files: src/crypto/asn1/* ++ src/crypto/base64/base64.c ++ src/crypto/bio/* ++ src/crypto/bn_extra/* ++ src/crypto/buf/* ++ src/crypto/cipher_extra/cipher_extra.c ++ src/crypto/cipher_extra/derive_key.c ++ src/crypto/cipher_extra/e_null.c ++ src/crypto/cipher_extra/e_rc2.c ++ src/crypto/cipher_extra/e_rc4.c ++ src/crypto/cipher_extra/internal.h ++ src/crypto/conf/conf.c ++ src/crypto/conf/conf_def.h ++ src/crypto/cpu-intel.c ++ src/crypto/digest_extra/digest_extra.c ++ src/crypto/dsa/dsa_test.cc ++ src/crypto/dsa/dsa.c ++ src/crypto/err/err.c ++ src/crypto/evp/evp_asn1.c ++ src/crypto/evp/evp_ctx.c ++ src/crypto/evp/evp.c ++ src/crypto/evp/internal.h ++ src/crypto/evp/sign.c ++ src/crypto/ex_data.c ++ src/crypto/fipsmodule/bn/* ++ src/crypto/fipsmodule/cipher/cipher.c ++ src/crypto/fipsmodule/cipher/e_des.c ++ src/crypto/fipsmodule/cipher/internal.h ++ src/crypto/fipsmodule/des/des.c ++ src/crypto/fipsmodule/des/internal.h ++ src/crypto/fipsmodule/digest/digest.c ++ src/crypto/fipsmodule/digest/digests.c ++ src/crypto/fipsmodule/digest/internal.h ++ src/crypto/fipsmodule/hmac/hmac.c ++ src/crypto/fipsmodule/md4/md4.c ++ src/crypto/fipsmodule/md5/md5.c ++ src/crypto/fipsmodule/rsa/internal.h ++ src/crypto/fipsmodule/rsa/rsa_impl.c ++ src/crypto/fipsmodule/rsa/rsa.c ++ src/crypto/fipsmodule/sha/sha1-altivec.c ++ src/crypto/fipsmodule/sha/sha1.c ++ src/crypto/fipsmodule/sha/sha256.c ++ src/crypto/fipsmodule/sha/sha512.c ++ src/crypto/hmac_extra/* ++ src/crypto/internal.h ++ src/crypto/lhash/lhash.c ++ src/crypto/mem.c ++ src/crypto/obj/* ++ src/crypto/pem/* ++ src/crypto/rc4/rc4.c ++ src/crypto/rsa_extra/* ++ src/crypto/stack/stack.c ++ src/crypto/thread.c ++ src/crypto/x509/* ++ src/decrepit/bio/base64_bio.c ++ src/decrepit/blowfish/blowfish.c ++ src/decrepit/cast/cast_tables.c ++ src/decrepit/cast/cast.c ++ src/decrepit/cast/internal.h ++ src/decrepit/des/cfb64ede.c ++ src/decrepit/macros.h ++ src/decrepit/rc4/rc4_decrepit.c ++ src/decrepit/ripemd/internal.h ++ src/decrepit/ripemd/ripemd.c ++ src/decrepit/rsa/rsa_decrepit.c ++ src/decrepit/ssl/ssl_decrepit.c ++ src/include/openssl/asn1.h ++ src/include/openssl/base64.h ++ src/include/openssl/bio.h ++ src/include/openssl/blowfish.h ++ src/include/openssl/bn.h ++ src/include/openssl/buf.h ++ src/include/openssl/cast.h ++ src/include/openssl/cipher.h ++ src/include/openssl/conf.h ++ src/include/openssl/cpu.h ++ src/include/openssl/des.h ++ src/include/openssl/dh.h ++ src/include/openssl/digest.h ++ src/include/openssl/dsa.h ++ src/include/openssl/err.h ++ src/include/openssl/evp.h ++ src/include/openssl/ex_data.h ++ src/include/openssl/hmac.h ++ src/include/openssl/lhash.h ++ src/include/openssl/md4.h ++ src/include/openssl/md5.h ++ src/include/openssl/mem.h ++ src/include/openssl/nid.h ++ src/include/openssl/obj.h ++ src/include/openssl/pem.h ++ src/include/openssl/rc4.h ++ src/include/openssl/ripemd.h ++ src/include/openssl/rsa.h ++ src/include/openssl/sha.h ++ src/include/openssl/ssl.h ++ src/include/openssl/ssl3.h ++ src/include/openssl/stack.h ++ src/include/openssl/thread.h ++ src/include/openssl/tls1.h ++ src/include/openssl/type_check.h ++ src/include/openssl/x509_vfy.h ++ src/include/openssl/x509.h ++ src/ssl/* ++Copyright: 1995-1998, Eric Young ++License: SSLeay ++ ++Files: crypto_test_data.cc ++ err_data.c ++ rules.mk ++ src/.clang-format ++ src/.github/* ++ src/.gitignore ++ src/BUILDING.md ++ src/CMakeLists.txt ++ src/codereview.settings ++ src/CONTRIBUTING.md ++ src/crypto/asn1/asn1_test.cc ++ src/crypto/base64/base64_test.cc ++ src/crypto/bio/bio_test.cc ++ src/crypto/bio/socket_helper.c ++ src/crypto/bn_extra/bn_asn1.c ++ src/crypto/bytestring/* ++ src/crypto/chacha/* ++ src/crypto/cipher_extra/aead_test.cc ++ src/crypto/cipher_extra/e_aesctrhmac.c ++ src/crypto/cipher_extra/e_aesgcmsiv.c ++ src/crypto/cipher_extra/e_chacha20poly1305.c ++ src/crypto/cipher_extra/e_tls.c ++ src/crypto/cipher_extra/test/nist_cavp/make_cavp.go ++ src/crypto/cmac/cmac_test.cc ++ src/crypto/compiler_test.cc ++ src/crypto/conf/internal.h ++ src/crypto/cpu-aarch64-linux.c ++ src/crypto/cpu-arm-linux.c ++ src/crypto/cpu-arm.c ++ src/crypto/cpu-ppc64le.c ++ src/crypto/crypto.c ++ src/crypto/curve25519/* ++ src/crypto/digest_extra/digest_test.cc ++ src/crypto/engine/* ++ src/crypto/err/err_data_generate.go ++ src/crypto/err/err_test.cc ++ src/crypto/evp/evp_extra_test.cc ++ src/crypto/evp/p_ed25519_asn1.c ++ src/crypto/evp/p_ed25519.c ++ src/crypto/evp/pbkdf_test.cc ++ src/crypto/evp/scrypt_test.cc ++ src/crypto/fipsmodule/aes/aes_test.cc ++ src/crypto/fipsmodule/aes/internal.h ++ src/crypto/fipsmodule/bcm.c ++ src/crypto/fipsmodule/bn/check_bn_tests.go ++ src/crypto/fipsmodule/cipher/aead.c ++ src/crypto/fipsmodule/delocate.h ++ src/crypto/fipsmodule/ec/ec_test.cc ++ src/crypto/fipsmodule/ec/p224-64.c ++ src/crypto/fipsmodule/ec/p256-x86_64_test.cc ++ src/crypto/fipsmodule/is_fips.c ++ src/crypto/fipsmodule/modes/polyval.c ++ src/crypto/fipsmodule/rand/* ++ src/crypto/hkdf/* ++ src/crypto/lhash/lhash_test.cc ++ src/crypto/obj/obj_test.cc ++ src/crypto/obj/objects.go ++ src/crypto/pkcs7/* ++ src/crypto/pkcs8/pkcs12_test.cc ++ src/crypto/pkcs8/pkcs8_test.cc ++ src/crypto/poly1305/* ++ src/crypto/pool/* ++ src/crypto/rand_extra/* ++ src/crypto/refcount_*.c ++ src/crypto/test/* ++ src/crypto/thread_*.c ++ src/crypto/x509/internal.h ++ src/crypto/x509/x509_test.cc ++ src/decrepit/evp/* ++ src/decrepit/obj/* ++ src/decrepit/ripemd/* ++ src/decrepit/x509/* ++ src/FUZZING.md ++ src/include/openssl/aead.h ++ src/include/openssl/asn1_mac.h ++ src/include/openssl/buffer.h ++ src/include/openssl/bytestring.h ++ src/include/openssl/chacha.h ++ src/include/openssl/cmac.h ++ src/include/openssl/crypto.h ++ src/include/openssl/curve25519.h ++ src/include/openssl/dtls1.h ++ src/include/openssl/engine.h ++ src/include/openssl/hkdf.h ++ src/include/openssl/is_boringssl.h ++ src/include/openssl/obj_mac.h ++ src/include/openssl/objects.h ++ src/include/openssl/opensslconf.h ++ src/include/openssl/opensslv.h ++ src/include/openssl/ossl_typ.h ++ src/include/openssl/pkcs12.h ++ src/include/openssl/pkcs7.h ++ src/include/openssl/poly1305.h ++ src/include/openssl/pool.h ++ src/include/openssl/rand.h ++ src/include/openssl/safestack.h ++ src/include/openssl/srtp.h ++ src/INCORPORATING.md ++ src/PORTING.md ++ src/README.md ++ src/ssl/CMakeLists.txt ++ src/ssl/ssl_aead_ctx.cc ++ src/ssl/ssl_buffer.cc ++ src/ssl/ssl_test.cc ++ src/ssl/ssl_versions.cc ++ src/ssl/test/* ++ src/ssl/tls13_both.cc ++ src/ssl/tls13_client.cc ++ src/ssl/tls13_enc.cc ++ src/ssl/tls13_server.cc ++ src/STYLE.md ++ src/tool/* ++ src/util/* ++Copyright: 2014-2017, Google Inc. ++License: ISC ++ ++Files: src/crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl ++Copyright: 2017, Shay Gueron ++ 2017, Google Inc ++License: ISC ++ ++Files: sources.bp ++ sources.mk ++Copyright: 2017, The Android Open Source Project ++License: Apache-2.0 ++ ++Files: src/ssl/test/runner/*.go ++Copyright: 2012-2016, The Go Authors ++License: BSD-3-clause ++ ++Files: src/util/bot/go/* ++ src/util/bot/vs_toolchain.py ++Copyright: 2014, The Chromium Authors ++License: BSD-3-clause ++ ++Files: src/crypto/fipsmodule/bn/asm/rsaz-avx2.pl ++ src/crypto/fipsmodule/bn/rsaz_exp.c ++ src/crypto/fipsmodule/bn/rsaz_exp.h ++Copyright: 2012, Intel Corporation ++License: BSD-3-clause ++ ++Files: src/crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl ++ src/crypto/fipsmodule/ec/p256-x86_64-table.h ++ src/crypto/fipsmodule/ec/p256-x86_64.* ++Copyright: 2014-2015, Intel Corporation ++License: ISC ++ ++Files: src/crypto/x509v3/v3_pci.c ++ src/crypto/x509v3/v3_pcia.c ++Copyright: 2004, Kungliga Tekniska Högskolan ++License: BSD-3-clause ++ ++Files: src/include/openssl/ecdh.h ++Copyright: 2002, Sun Microsystems ++ 2000-2002, The OpenSSL Project ++License: OpenSSL ++ ++Files: src/crypto/fipsmodule/bn/montgomery_inv.c ++Copyright: 2016, Brian Smith ++License: ISC ++ ++Files: src/crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl ++Copyright: 2015, CloudFlare Ltd ++License: ISC ++ ++Files: debian/* ++Copyright: 2016, Kai-Chung Yan ++License: MIT ++ ++License: OpenSSL ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions ++ are met: ++ 1. Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++ 2. Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in ++ the documentation and/or other materials provided with the ++ distribution. ++ 3. All advertising materials mentioning features or use of this ++ software must display the following acknowledgment: ++ "This product includes software developed by the OpenSSL Project ++ for use in the OpenSSL Toolkit. (http://www.openssl.org/)" ++ 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to ++ endorse or promote products derived from this software without ++ prior written permission. For written permission, please contact ++ openssl-core@openssl.org. ++ 5. Products derived from this software may not be called "OpenSSL" ++ nor may "OpenSSL" appear in their names without prior written ++ permission of the OpenSSL Project. ++ 6. Redistributions of any form whatsoever must retain the following ++ acknowledgment: ++ "This product includes software developed by the OpenSSL Project ++ for use in the OpenSSL Toolkit (http://www.openssl.org/)" ++ . ++ THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY ++ EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR ++ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ++ ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT ++ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; ++ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ++ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ++ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED ++ OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++License: ISC ++ Permission to use, copy, modify, and/or distribute this software for any ++ purpose with or without fee is hereby granted, provided that the above ++ copyright notice and this permission notice appear in all copies. ++ . ++ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES ++ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF ++ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY ++ SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ++ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION ++ OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN ++ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ ++License: MIT ++ Permission is hereby granted, free of charge, to any person obtaining a copy ++ of this software and associated documentation files (the "Software"), to deal ++ in the Software without restriction, including without limitation the rights ++ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++ copies of the Software, and to permit persons to whom the Software is ++ furnished to do so, subject to the following conditions: ++ . ++ The above copyright notice and this permission notice shall be included in all ++ copies or substantial portions of the Software. ++ . ++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++ SOFTWARE. ++ ++License: SSLeay ++ This library is free for commercial and non-commercial use as long as ++ the following conditions are adhered to. The following conditions ++ apply to all code found in this distribution, be it the RC4, RSA, ++ lhash, DES, etc., code; not just the SSL code. The SSL documentation ++ included with this distribution is covered by the same copyright terms ++ except that the holder is Tim Hudson (tjh@cryptsoft.com). ++ . ++ Copyright remains Eric Young's, and as such any Copyright notices in ++ the code are not to be removed. ++ If this package is used in a product, Eric Young should be given attribution ++ as the author of the parts of the library used. ++ This can be in the form of a textual message at program startup or ++ in documentation (online or textual) provided with the package. ++ . ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions ++ are met: ++ 1. Redistributions of source code must retain the copyright ++ notice, this list of conditions and the following disclaimer. ++ 2. Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in the ++ documentation and/or other materials provided with the distribution. ++ 3. All advertising materials mentioning features or use of this software ++ must display the following acknowledgement: ++ "This product includes cryptographic software written by ++ Eric Young (eay@cryptsoft.com)" ++ The word 'cryptographic' can be left out if the routines from the library ++ being used are not cryptographic related :-). ++ 4. If you include any Windows specific code (or a derivative thereof) from ++ the apps directory (application code) you must include an acknowledgement: ++ "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" ++ . ++ THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND ++ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++ ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE ++ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++ SUCH DAMAGE. ++ . ++ The licence and distribution terms for any publically available version or ++ derivative of this code cannot be changed. i.e. this code cannot simply be ++ copied and put under another distribution licence ++ [including the GNU General Public Licence.] ++ ++License: Apache-2.0 ++ On Debian systems, the full text of the Apache License, Version 2.0 ++ can be found in the file `/usr/share/common-licenses/Apache-2.0'. ++ ++License: BSD-3-clause ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions are ++ met: ++ . ++ * Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++ * Redistributions in binary form must reproduce the above ++ copyright notice, this list of conditions and the following disclaimer ++ in the documentation and/or other materials provided with the ++ distribution. ++ * Neither the name of Google Inc. nor the names of its ++ contributors may be used to endorse or promote products derived from ++ this software without specific prior written permission. ++ . ++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ++ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ++ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --cc debian/crypto_test.mk index 0000000,0000000..a56282d new file mode 100644 --- /dev/null +++ b/debian/crypto_test.mk @@@ -1,0 -1,0 +1,38 @@@ ++include debian/sources.mk ++ ++NAME = crypto_test ++ ++SOURCES = $(crypto_test_sources) ++OBJECTS = $(SOURCES:.cc=.o) ++ ++# src/crypto/pkcs8/pkcs12_test.cc:37:19: error: ISO C++20 does not permit initialization of char array with UTF-8 string literal ++CXXFLAGS += -std=gnu++17 ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Ldebian/out \ ++ -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ ++ -lcrypto \ ++ -lgtest \ ++ -lpthread \ ++ -lssl \ ++ -ltest_support \ ++ ++# -latomic should be the last library specified ++# https://github.com/android/ndk/issues/589 ++ifeq ($(DEB_HOST_ARCH), armel) ++ LDFLAGS += -latomic ++endif ++ ++# clang built crypto_test binary crashes on mips64el ++# so fallback to gcc as workaround ++ifeq ($(DEB_HOST_ARCH), mips64el) ++ CXX = g++ ++endif ++ ++build: $(OBJECTS) ++ $(CXX) $^ -o debian/out/$(NAME) $(LDFLAGS) ++ ++$(OBJECTS): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/gbp.conf index 0000000,0000000..5474c60 new file mode 100644 --- /dev/null +++ b/debian/gbp.conf @@@ -1,0 -1,0 +1,3 @@@ ++[DEFAULT] ++pristine-tar = True ++sign-tags = True diff --cc debian/libcrypto.mk index 0000000,0000000..5b2bfc9 new file mode 100644 --- /dev/null +++ b/debian/libcrypto.mk @@@ -1,0 -1,0 +1,55 @@@ ++include debian/sources.mk ++ ++NAME = libcrypto ++SOURCES = $(crypto_sources) ++ ++amd64_SOURCES = $(linux_x86_64_sources) ++arm64_SOURCES = $(linux_aarch64_sources) ++armel_SOURCES = $(linux_arm_sources) ++armhf_SOURCES = $(linux_arm_sources) ++i386_SOURCES = $(linux_x86_sources) ++ppc64el_SOURCES = $(linux_ppc64le_sources) ++hurd-i386_SOURCES = $(linux_x86_sources) ++kfreebsd-i386_SOURCES = $(linux_x86_sources) ++kfreebsd-amd64_SOURCES = $(linux_x86_64_sources) ++x32_SOURCES = $(linux_x86_64_sources) ++ ++SOURCES += $($(DEB_HOST_ARCH)_SOURCES) ++ ++SOURCES_C = $(filter %.c,$(SOURCES)) ++OBJECTS_C = $(SOURCES_C:.c=.o) ++SOURCES_ASSEMBLY = $(filter %.S,$(SOURCES)) ++OBJECTS_ASSEMBLY = $(SOURCES_ASSEMBLY:.S=.o) ++ ++CFLAGS += -std=gnu11 \ ++ -fvisibility=hidden \ ++ -Wa,--noexecstack # Fixes `shlib-with-executable-stack`, see `src/util/BUILD.toplevel` ++ ++CPPFLAGS += \ ++ -Isrc/crypto \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Wl,-soname,$(NAME).so.0 \ ++ -lpthread \ ++ -shared \ ++ ++# -latomic should be the last library specified ++# https://github.com/android/ndk/issues/589 ++# Use gcc instead of clang for assembly on armel ++CC_ASSEMBLY = $(CC) ++ifeq ($(DEB_HOST_ARCH), armel) ++ LDFLAGS += -latomic ++ CC_ASSEMBLY = gcc ++endif ++ ++build: $(OBJECTS_C) $(OBJECTS_ASSEMBLY) ++ mkdir -p debian/out ++ $(CC) $^ -o debian/out/$(NAME).so.0 $(LDFLAGS) ++ ln -sf $(NAME).so.0 debian/out/$(NAME).so ++ ++$(OBJECTS_C): %.o: %.c ++ $(CC) -c -o $@ $< $(CFLAGS) $(CPPFLAGS) ++ ++$(OBJECTS_ASSEMBLY): %.o: %.S ++ $(CC_ASSEMBLY) -c -o $@ $< $(CFLAGS) $(CPPFLAGS) diff --cc debian/libssl.mk index 0000000,0000000..dd00b87 new file mode 100644 --- /dev/null +++ b/debian/libssl.mk @@@ -1,0 -1,0 +1,26 @@@ ++include debian/sources.mk ++ ++NAME = libssl ++SOURCES = $(ssl_sources) ++ ++OBJECTS = $(SOURCES:.cc=.o) ++ ++CXXFLAGS += -std=gnu++2a \ ++ -fvisibility=hidden \ ++ ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Ldebian/out \ ++ -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ ++ -Wl,-soname,$(NAME).so.0 \ ++ -lcrypto \ ++ -shared \ ++ ++build: $(OBJECTS) ++ $(CXX) $^ -o debian/out/$(NAME).so.0 $(LDFLAGS) ++ ln -sf $(NAME).so.0 debian/out/$(NAME).so ++ ++$(OBJECTS): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/libtest_support.mk index 0000000,0000000..99137a5 new file mode 100644 --- /dev/null +++ b/debian/libtest_support.mk @@@ -1,0 -1,0 +1,21 @@@ ++include debian/sources.mk ++ ++NAME = libtest_support ++SOURCES = $(test_support_sources) ++ ++OBJECTS = $(SOURCES:.cc=.o) ++ ++CXXFLAGS += -std=gnu++2a ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Wl,-soname,$(NAME).so.0 \ ++ -shared \ ++ ++build: $(OBJECTS) ++ $(CXX) $^ -o debian/out/$(NAME).so.0 $(LDFLAGS) ++ ln -sf $(NAME).so.0 debian/out/$(NAME).so ++ ++$(OBJECTS): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/patches/01-Add-new-Arch-ia64-riscv64-sh4-x32.patch index 0000000,0000000..ac691b6 new file mode 100644 --- /dev/null +++ b/debian/patches/01-Add-new-Arch-ia64-riscv64-sh4-x32.patch @@@ -1,0 -1,0 +1,25 @@@ ++--- a/src/include/openssl/base.h +++++ b/src/include/openssl/base.h ++@@ -84,7 +84,7 @@ extern "C" { ++ #endif ++ ++ ++-#if defined(__x86_64) || defined(_M_AMD64) || defined(_M_X64) +++#if (defined(__x86_64) && defined(__LP64__)) || defined(_M_AMD64) || defined(_M_X64) ++ #define OPENSSL_64_BIT ++ #define OPENSSL_X86_64 ++ #elif defined(__x86) || defined(__i386) || defined(__i386__) || defined(_M_IX86) ++@@ -109,6 +109,13 @@ extern "C" { ++ #define OPENSSL_64_BIT ++ #elif defined(__riscv) && __SIZEOF_POINTER__ == 4 ++ #define OPENSSL_32_BIT +++#elif defined(__ia64__) +++#define OPENSSL_64_BIT +++#elif defined(__x86_64__) && defined(__ILP32__) // x32 +++#define OPENSSL_32_BIT +++#define OPENSSL_X86_64 +++#elif defined(__sh__) +++#define OPENSSL_32_BIT ++ #elif defined(__pnacl__) ++ #define OPENSSL_32_BIT ++ #define OPENSSL_PNACL diff --cc debian/patches/02-sources-mk.patch index 0000000,0000000..5241310 new file mode 100644 --- /dev/null +++ b/debian/patches/02-sources-mk.patch @@@ -1,0 -1,0 +1,12 @@@ ++--- a/src/util/generate_build_files.py +++++ b/src/util/generate_build_files.py ++@@ -315,6 +315,9 @@ class Eureka(object): ++ self.PrintVariableSection(makefile, 'crypto_sources', files['crypto']) ++ self.PrintVariableSection(makefile, 'ssl_sources', files['ssl']) ++ self.PrintVariableSection(makefile, 'tool_sources', files['tool']) +++ self.PrintVariableSection(makefile, 'test_support_sources', files['test_support']) +++ self.PrintVariableSection(makefile, 'crypto_test_sources', files['crypto_test']) +++ self.PrintVariableSection(makefile, 'ssl_test_sources', files['ssl_test']) ++ ++ for ((osname, arch), asm_files) in asm_outputs: ++ if osname != 'linux': diff --cc debian/patches/series index 0000000,0000000..8cbc366 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,2 @@@ ++01-Add-new-Arch-ia64-riscv64-sh4-x32.patch ++02-sources-mk.patch diff --cc debian/rules index 0000000,0000000..07d5a9f new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,61 @@@ ++#!/usr/bin/make -f ++ ++include /usr/share/dpkg/architecture.mk ++include /usr/share/dpkg/pkg-info.mk ++ ++## Security Hardening ++export DEB_BUILD_MAINT_OPTIONS = hardening=+all ++export DEB_CFLAGS_MAINT_APPEND = -fPIC ++export DEB_CXXFLAGS_MAINT_APPEND = -fPIC ++export DEB_LDFLAGS_MAINT_APPEND = -fPIC -pie ++export DEB_CPPFLAGS_MAINT_APPEND = -DNDEBUG -UDEBUG \ ++ -DBORINGSSL_ANDROID_SYSTEM \ ++ -DBORINGSSL_IMPLEMENTATION \ ++ -DBORINGSSL_SHARED_LIBRARY \ ++ -DOPENSSL_SMALL \ ++ -fmessage-length=0 \ ++ -fno-exceptions \ ++ -fno-strict-aliasing \ ++ -no-canonical-prefixes \ ++ ++ifneq (, $(shell which clang)) ++ export CC=clang ++ export CXX=clang++ ++endif ++ ++%: ++ dh $@ ++ ++# Since this depends on golang-go, not gccgo, so let's update manually ++# Depends: golang-go ++update-sources-mk: ++ dpkg-source --before-build . ++ python3 src/util/generate_build_files.py eureka ++ cp eureka.mk debian/sources.mk ++ ++lib%.so: debian/lib%.mk ++ dh_auto_build --buildsystem=makefile -- --file=$< ++ ++compiler_test: debian/compiler_test.mk ++ dh_auto_build --buildsystem=makefile -- --file=$< ++ LD_LIBRARY_PATH=debian/out debian/out/$@ ++ ++%_test: debian/%_test.mk libtest_support.so libcrypto.so libssl.so ++ dh_auto_build --buildsystem=makefile -- --file=$< ++ ++ifneq ($(DEB_HOST_ARCH), hurd-i386) ++override_dh_auto_build-arch: compiler_test tool_test ++else ++# TODO: tool_test build fails on hurd-i386 currently ++override_dh_auto_build-arch: compiler_test ++endif ++ dh_auto_build $@ ++ ++ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS))) ++override_dh_auto_test-arch: crypto_test ssl_test ++ifneq ($(DEB_HOST_ARCH), hurd-i386) ++ LD_LIBRARY_PATH=debian/out debian/out/bssl-tool genrsa ++endif ++ LD_LIBRARY_PATH=debian/out debian/out/crypto_test ++ LD_LIBRARY_PATH=debian/out debian/out/ssl_test ++endif diff --cc debian/source/format index 0000000,0000000..46ebe02 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/source/lintian-overrides index 0000000,0000000..273ff20 new file mode 100644 --- /dev/null +++ b/debian/source/lintian-overrides @@@ -1,0 -1,0 +1,6 @@@ ++# These are only test files for the ar implementation in Go. ++source: source-is-missing src/util/ar/testdata/linux/bar.cc.o ++source: source-is-missing src/util/ar/testdata/linux/foo.c.o ++source: source-contains-prebuilt-binary src/util/ar/testdata/linux/bar.cc.o ++source: source-contains-prebuilt-binary src/util/ar/testdata/linux/foo.c.o ++source: very-long-line-length-in-source-file diff --cc debian/sources.mk index 0000000,0000000..e98e463 new file mode 100644 --- /dev/null +++ b/debian/sources.mk @@@ -1,0 -1,0 +1,457 @@@ ++# Copyright (C) 2017 The Android Open Source Project ++# ++# Licensed under the Apache License, Version 2.0 (the "License"); ++# you may not use this file except in compliance with the License. ++# You may obtain a copy of the License at ++# ++# http://www.apache.org/licenses/LICENSE-2.0 ++# ++# Unless required by applicable law or agreed to in writing, software ++# distributed under the License is distributed on an "AS IS" BASIS, ++# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ++# See the License for the specific language governing permissions and ++# limitations under the License. ++ ++# This file is created by generate_build_files.py. Do not edit manually. ++ ++crypto_sources := \ ++ err_data.c\ ++ src/crypto/asn1/a_bitstr.c\ ++ src/crypto/asn1/a_bool.c\ ++ src/crypto/asn1/a_d2i_fp.c\ ++ src/crypto/asn1/a_dup.c\ ++ src/crypto/asn1/a_enum.c\ ++ src/crypto/asn1/a_gentm.c\ ++ src/crypto/asn1/a_i2d_fp.c\ ++ src/crypto/asn1/a_int.c\ ++ src/crypto/asn1/a_mbstr.c\ ++ src/crypto/asn1/a_object.c\ ++ src/crypto/asn1/a_octet.c\ ++ src/crypto/asn1/a_print.c\ ++ src/crypto/asn1/a_strex.c\ ++ src/crypto/asn1/a_strnid.c\ ++ src/crypto/asn1/a_time.c\ ++ src/crypto/asn1/a_type.c\ ++ src/crypto/asn1/a_utctm.c\ ++ src/crypto/asn1/a_utf8.c\ ++ src/crypto/asn1/asn1_lib.c\ ++ src/crypto/asn1/asn1_par.c\ ++ src/crypto/asn1/asn_pack.c\ ++ src/crypto/asn1/f_int.c\ ++ src/crypto/asn1/f_string.c\ ++ src/crypto/asn1/tasn_dec.c\ ++ src/crypto/asn1/tasn_enc.c\ ++ src/crypto/asn1/tasn_fre.c\ ++ src/crypto/asn1/tasn_new.c\ ++ src/crypto/asn1/tasn_typ.c\ ++ src/crypto/asn1/tasn_utl.c\ ++ src/crypto/asn1/time_support.c\ ++ src/crypto/base64/base64.c\ ++ src/crypto/bio/bio.c\ ++ src/crypto/bio/bio_mem.c\ ++ src/crypto/bio/connect.c\ ++ src/crypto/bio/fd.c\ ++ src/crypto/bio/file.c\ ++ src/crypto/bio/hexdump.c\ ++ src/crypto/bio/pair.c\ ++ src/crypto/bio/printf.c\ ++ src/crypto/bio/socket.c\ ++ src/crypto/bio/socket_helper.c\ ++ src/crypto/blake2/blake2.c\ ++ src/crypto/bn_extra/bn_asn1.c\ ++ src/crypto/bn_extra/convert.c\ ++ src/crypto/buf/buf.c\ ++ src/crypto/bytestring/asn1_compat.c\ ++ src/crypto/bytestring/ber.c\ ++ src/crypto/bytestring/cbb.c\ ++ src/crypto/bytestring/cbs.c\ ++ src/crypto/bytestring/unicode.c\ ++ src/crypto/chacha/chacha.c\ ++ src/crypto/cipher_extra/cipher_extra.c\ ++ src/crypto/cipher_extra/derive_key.c\ ++ src/crypto/cipher_extra/e_aesccm.c\ ++ src/crypto/cipher_extra/e_aesctrhmac.c\ ++ src/crypto/cipher_extra/e_aesgcmsiv.c\ ++ src/crypto/cipher_extra/e_chacha20poly1305.c\ ++ src/crypto/cipher_extra/e_null.c\ ++ src/crypto/cipher_extra/e_rc2.c\ ++ src/crypto/cipher_extra/e_rc4.c\ ++ src/crypto/cipher_extra/e_tls.c\ ++ src/crypto/cipher_extra/tls_cbc.c\ ++ src/crypto/cmac/cmac.c\ ++ src/crypto/conf/conf.c\ ++ src/crypto/cpu_aarch64_apple.c\ ++ src/crypto/cpu_aarch64_fuchsia.c\ ++ src/crypto/cpu_aarch64_linux.c\ ++ src/crypto/cpu_aarch64_win.c\ ++ src/crypto/cpu_arm.c\ ++ src/crypto/cpu_arm_linux.c\ ++ src/crypto/cpu_intel.c\ ++ src/crypto/cpu_ppc64le.c\ ++ src/crypto/crypto.c\ ++ src/crypto/curve25519/curve25519.c\ ++ src/crypto/curve25519/spake25519.c\ ++ src/crypto/dh_extra/dh_asn1.c\ ++ src/crypto/dh_extra/params.c\ ++ src/crypto/digest_extra/digest_extra.c\ ++ src/crypto/dsa/dsa.c\ ++ src/crypto/dsa/dsa_asn1.c\ ++ src/crypto/ec_extra/ec_asn1.c\ ++ src/crypto/ec_extra/ec_derive.c\ ++ src/crypto/ec_extra/hash_to_curve.c\ ++ src/crypto/ecdh_extra/ecdh_extra.c\ ++ src/crypto/ecdsa_extra/ecdsa_asn1.c\ ++ src/crypto/engine/engine.c\ ++ src/crypto/err/err.c\ ++ src/crypto/evp/digestsign.c\ ++ src/crypto/evp/evp.c\ ++ src/crypto/evp/evp_asn1.c\ ++ src/crypto/evp/evp_ctx.c\ ++ src/crypto/evp/p_dsa_asn1.c\ ++ src/crypto/evp/p_ec.c\ ++ src/crypto/evp/p_ec_asn1.c\ ++ src/crypto/evp/p_ed25519.c\ ++ src/crypto/evp/p_ed25519_asn1.c\ ++ src/crypto/evp/p_rsa.c\ ++ src/crypto/evp/p_rsa_asn1.c\ ++ src/crypto/evp/p_x25519.c\ ++ src/crypto/evp/p_x25519_asn1.c\ ++ src/crypto/evp/pbkdf.c\ ++ src/crypto/evp/print.c\ ++ src/crypto/evp/scrypt.c\ ++ src/crypto/evp/sign.c\ ++ src/crypto/ex_data.c\ ++ src/crypto/fipsmodule/bcm.c\ ++ src/crypto/fipsmodule/fips_shared_support.c\ ++ src/crypto/hkdf/hkdf.c\ ++ src/crypto/hpke/hpke.c\ ++ src/crypto/hrss/hrss.c\ ++ src/crypto/lhash/lhash.c\ ++ src/crypto/mem.c\ ++ src/crypto/obj/obj.c\ ++ src/crypto/obj/obj_xref.c\ ++ src/crypto/pem/pem_all.c\ ++ src/crypto/pem/pem_info.c\ ++ src/crypto/pem/pem_lib.c\ ++ src/crypto/pem/pem_oth.c\ ++ src/crypto/pem/pem_pk8.c\ ++ src/crypto/pem/pem_pkey.c\ ++ src/crypto/pem/pem_x509.c\ ++ src/crypto/pem/pem_xaux.c\ ++ src/crypto/pkcs7/pkcs7.c\ ++ src/crypto/pkcs7/pkcs7_x509.c\ ++ src/crypto/pkcs8/p5_pbev2.c\ ++ src/crypto/pkcs8/pkcs8.c\ ++ src/crypto/pkcs8/pkcs8_x509.c\ ++ src/crypto/poly1305/poly1305.c\ ++ src/crypto/poly1305/poly1305_arm.c\ ++ src/crypto/poly1305/poly1305_vec.c\ ++ src/crypto/pool/pool.c\ ++ src/crypto/rand_extra/deterministic.c\ ++ src/crypto/rand_extra/forkunsafe.c\ ++ src/crypto/rand_extra/fuchsia.c\ ++ src/crypto/rand_extra/passive.c\ ++ src/crypto/rand_extra/rand_extra.c\ ++ src/crypto/rand_extra/windows.c\ ++ src/crypto/rc4/rc4.c\ ++ src/crypto/refcount_c11.c\ ++ src/crypto/refcount_lock.c\ ++ src/crypto/rsa_extra/rsa_asn1.c\ ++ src/crypto/rsa_extra/rsa_print.c\ ++ src/crypto/siphash/siphash.c\ ++ src/crypto/stack/stack.c\ ++ src/crypto/thread.c\ ++ src/crypto/thread_none.c\ ++ src/crypto/thread_pthread.c\ ++ src/crypto/thread_win.c\ ++ src/crypto/trust_token/pmbtoken.c\ ++ src/crypto/trust_token/trust_token.c\ ++ src/crypto/trust_token/voprf.c\ ++ src/crypto/x509/a_digest.c\ ++ src/crypto/x509/a_sign.c\ ++ src/crypto/x509/a_verify.c\ ++ src/crypto/x509/algorithm.c\ ++ src/crypto/x509/asn1_gen.c\ ++ src/crypto/x509/by_dir.c\ ++ src/crypto/x509/by_file.c\ ++ src/crypto/x509/i2d_pr.c\ ++ src/crypto/x509/name_print.c\ ++ src/crypto/x509/rsa_pss.c\ ++ src/crypto/x509/t_crl.c\ ++ src/crypto/x509/t_req.c\ ++ src/crypto/x509/t_x509.c\ ++ src/crypto/x509/t_x509a.c\ ++ src/crypto/x509/x509.c\ ++ src/crypto/x509/x509_att.c\ ++ src/crypto/x509/x509_cmp.c\ ++ src/crypto/x509/x509_d2.c\ ++ src/crypto/x509/x509_def.c\ ++ src/crypto/x509/x509_ext.c\ ++ src/crypto/x509/x509_lu.c\ ++ src/crypto/x509/x509_obj.c\ ++ src/crypto/x509/x509_req.c\ ++ src/crypto/x509/x509_set.c\ ++ src/crypto/x509/x509_trs.c\ ++ src/crypto/x509/x509_txt.c\ ++ src/crypto/x509/x509_v3.c\ ++ src/crypto/x509/x509_vfy.c\ ++ src/crypto/x509/x509_vpm.c\ ++ src/crypto/x509/x509cset.c\ ++ src/crypto/x509/x509name.c\ ++ src/crypto/x509/x509rset.c\ ++ src/crypto/x509/x509spki.c\ ++ src/crypto/x509/x_algor.c\ ++ src/crypto/x509/x_all.c\ ++ src/crypto/x509/x_attrib.c\ ++ src/crypto/x509/x_crl.c\ ++ src/crypto/x509/x_exten.c\ ++ src/crypto/x509/x_info.c\ ++ src/crypto/x509/x_name.c\ ++ src/crypto/x509/x_pkey.c\ ++ src/crypto/x509/x_pubkey.c\ ++ src/crypto/x509/x_req.c\ ++ src/crypto/x509/x_sig.c\ ++ src/crypto/x509/x_spki.c\ ++ src/crypto/x509/x_val.c\ ++ src/crypto/x509/x_x509.c\ ++ src/crypto/x509/x_x509a.c\ ++ src/crypto/x509v3/pcy_cache.c\ ++ src/crypto/x509v3/pcy_data.c\ ++ src/crypto/x509v3/pcy_lib.c\ ++ src/crypto/x509v3/pcy_map.c\ ++ src/crypto/x509v3/pcy_node.c\ ++ src/crypto/x509v3/pcy_tree.c\ ++ src/crypto/x509v3/v3_akey.c\ ++ src/crypto/x509v3/v3_akeya.c\ ++ src/crypto/x509v3/v3_alt.c\ ++ src/crypto/x509v3/v3_bcons.c\ ++ src/crypto/x509v3/v3_bitst.c\ ++ src/crypto/x509v3/v3_conf.c\ ++ src/crypto/x509v3/v3_cpols.c\ ++ src/crypto/x509v3/v3_crld.c\ ++ src/crypto/x509v3/v3_enum.c\ ++ src/crypto/x509v3/v3_extku.c\ ++ src/crypto/x509v3/v3_genn.c\ ++ src/crypto/x509v3/v3_ia5.c\ ++ src/crypto/x509v3/v3_info.c\ ++ src/crypto/x509v3/v3_int.c\ ++ src/crypto/x509v3/v3_lib.c\ ++ src/crypto/x509v3/v3_ncons.c\ ++ src/crypto/x509v3/v3_ocsp.c\ ++ src/crypto/x509v3/v3_pci.c\ ++ src/crypto/x509v3/v3_pcia.c\ ++ src/crypto/x509v3/v3_pcons.c\ ++ src/crypto/x509v3/v3_pmaps.c\ ++ src/crypto/x509v3/v3_prn.c\ ++ src/crypto/x509v3/v3_purp.c\ ++ src/crypto/x509v3/v3_skey.c\ ++ src/crypto/x509v3/v3_utl.c\ ++ ++ssl_sources := \ ++ src/ssl/bio_ssl.cc\ ++ src/ssl/d1_both.cc\ ++ src/ssl/d1_lib.cc\ ++ src/ssl/d1_pkt.cc\ ++ src/ssl/d1_srtp.cc\ ++ src/ssl/dtls_method.cc\ ++ src/ssl/dtls_record.cc\ ++ src/ssl/encrypted_client_hello.cc\ ++ src/ssl/extensions.cc\ ++ src/ssl/handoff.cc\ ++ src/ssl/handshake.cc\ ++ src/ssl/handshake_client.cc\ ++ src/ssl/handshake_server.cc\ ++ src/ssl/s3_both.cc\ ++ src/ssl/s3_lib.cc\ ++ src/ssl/s3_pkt.cc\ ++ src/ssl/ssl_aead_ctx.cc\ ++ src/ssl/ssl_asn1.cc\ ++ src/ssl/ssl_buffer.cc\ ++ src/ssl/ssl_cert.cc\ ++ src/ssl/ssl_cipher.cc\ ++ src/ssl/ssl_file.cc\ ++ src/ssl/ssl_key_share.cc\ ++ src/ssl/ssl_lib.cc\ ++ src/ssl/ssl_privkey.cc\ ++ src/ssl/ssl_session.cc\ ++ src/ssl/ssl_stat.cc\ ++ src/ssl/ssl_transcript.cc\ ++ src/ssl/ssl_versions.cc\ ++ src/ssl/ssl_x509.cc\ ++ src/ssl/t1_enc.cc\ ++ src/ssl/tls13_both.cc\ ++ src/ssl/tls13_client.cc\ ++ src/ssl/tls13_enc.cc\ ++ src/ssl/tls13_server.cc\ ++ src/ssl/tls_method.cc\ ++ src/ssl/tls_record.cc\ ++ ++tool_sources := \ ++ src/tool/args.cc\ ++ src/tool/ciphers.cc\ ++ src/tool/client.cc\ ++ src/tool/const.cc\ ++ src/tool/digest.cc\ ++ src/tool/fd.cc\ ++ src/tool/file.cc\ ++ src/tool/generate_ech.cc\ ++ src/tool/generate_ed25519.cc\ ++ src/tool/genrsa.cc\ ++ src/tool/pkcs12.cc\ ++ src/tool/rand.cc\ ++ src/tool/server.cc\ ++ src/tool/sign.cc\ ++ src/tool/speed.cc\ ++ src/tool/tool.cc\ ++ src/tool/transport_common.cc\ ++ ++test_support_sources := \ ++ src/crypto/test/file_test.cc\ ++ src/crypto/test/malloc.cc\ ++ src/crypto/test/test_util.cc\ ++ src/crypto/test/wycheproof_util.cc\ ++ ++crypto_test_sources := \ ++ crypto_test_data.cc\ ++ src/crypto/abi_self_test.cc\ ++ src/crypto/asn1/asn1_test.cc\ ++ src/crypto/base64/base64_test.cc\ ++ src/crypto/bio/bio_test.cc\ ++ src/crypto/blake2/blake2_test.cc\ ++ src/crypto/buf/buf_test.cc\ ++ src/crypto/bytestring/bytestring_test.cc\ ++ src/crypto/chacha/chacha_test.cc\ ++ src/crypto/cipher_extra/aead_test.cc\ ++ src/crypto/cipher_extra/cipher_test.cc\ ++ src/crypto/cmac/cmac_test.cc\ ++ src/crypto/compiler_test.cc\ ++ src/crypto/conf/conf_test.cc\ ++ src/crypto/constant_time_test.cc\ ++ src/crypto/cpu_arm_linux_test.cc\ ++ src/crypto/crypto_test.cc\ ++ src/crypto/curve25519/ed25519_test.cc\ ++ src/crypto/curve25519/spake25519_test.cc\ ++ src/crypto/curve25519/x25519_test.cc\ ++ src/crypto/dh_extra/dh_test.cc\ ++ src/crypto/digest_extra/digest_test.cc\ ++ src/crypto/dsa/dsa_test.cc\ ++ src/crypto/ecdh_extra/ecdh_test.cc\ ++ src/crypto/err/err_test.cc\ ++ src/crypto/evp/evp_extra_test.cc\ ++ src/crypto/evp/evp_test.cc\ ++ src/crypto/evp/pbkdf_test.cc\ ++ src/crypto/evp/scrypt_test.cc\ ++ src/crypto/fipsmodule/aes/aes_test.cc\ ++ src/crypto/fipsmodule/bn/bn_test.cc\ ++ src/crypto/fipsmodule/ec/ec_test.cc\ ++ src/crypto/fipsmodule/ec/p256-x86_64_test.cc\ ++ src/crypto/fipsmodule/ecdsa/ecdsa_test.cc\ ++ src/crypto/fipsmodule/md5/md5_test.cc\ ++ src/crypto/fipsmodule/modes/gcm_test.cc\ ++ src/crypto/fipsmodule/rand/ctrdrbg_test.cc\ ++ src/crypto/fipsmodule/rand/fork_detect_test.cc\ ++ src/crypto/fipsmodule/sha/sha_test.cc\ ++ src/crypto/hkdf/hkdf_test.cc\ ++ src/crypto/hmac_extra/hmac_test.cc\ ++ src/crypto/hpke/hpke_test.cc\ ++ src/crypto/hrss/hrss_test.cc\ ++ src/crypto/impl_dispatch_test.cc\ ++ src/crypto/lhash/lhash_test.cc\ ++ src/crypto/obj/obj_test.cc\ ++ src/crypto/pem/pem_test.cc\ ++ src/crypto/pkcs7/pkcs7_test.cc\ ++ src/crypto/pkcs8/pkcs12_test.cc\ ++ src/crypto/pkcs8/pkcs8_test.cc\ ++ src/crypto/poly1305/poly1305_test.cc\ ++ src/crypto/pool/pool_test.cc\ ++ src/crypto/rand_extra/rand_test.cc\ ++ src/crypto/refcount_test.cc\ ++ src/crypto/rsa_extra/rsa_test.cc\ ++ src/crypto/self_test.cc\ ++ src/crypto/siphash/siphash_test.cc\ ++ src/crypto/stack/stack_test.cc\ ++ src/crypto/test/abi_test.cc\ ++ src/crypto/test/file_test_gtest.cc\ ++ src/crypto/test/gtest_main.cc\ ++ src/crypto/thread_test.cc\ ++ src/crypto/trust_token/trust_token_test.cc\ ++ src/crypto/x509/x509_test.cc\ ++ src/crypto/x509/x509_time_test.cc\ ++ src/crypto/x509v3/tab_test.cc\ ++ ++ssl_test_sources := \ ++ src/crypto/test/abi_test.cc\ ++ src/crypto/test/gtest_main.cc\ ++ src/ssl/span_test.cc\ ++ src/ssl/ssl_c_test.c\ ++ src/ssl/ssl_test.cc\ ++ ++linux_aarch64_sources := \ ++ linux-aarch64/crypto/chacha/chacha-armv8.S\ ++ linux-aarch64/crypto/fipsmodule/aesv8-armx64.S\ ++ linux-aarch64/crypto/fipsmodule/armv8-mont.S\ ++ linux-aarch64/crypto/fipsmodule/ghash-neon-armv8.S\ ++ linux-aarch64/crypto/fipsmodule/ghashv8-armx64.S\ ++ linux-aarch64/crypto/fipsmodule/sha1-armv8.S\ ++ linux-aarch64/crypto/fipsmodule/sha256-armv8.S\ ++ linux-aarch64/crypto/fipsmodule/sha512-armv8.S\ ++ linux-aarch64/crypto/fipsmodule/vpaes-armv8.S\ ++ linux-aarch64/crypto/test/trampoline-armv8.S\ ++ ++linux_arm_sources := \ ++ linux-arm/crypto/chacha/chacha-armv4.S\ ++ linux-arm/crypto/fipsmodule/aesv8-armx32.S\ ++ linux-arm/crypto/fipsmodule/armv4-mont.S\ ++ linux-arm/crypto/fipsmodule/bsaes-armv7.S\ ++ linux-arm/crypto/fipsmodule/ghash-armv4.S\ ++ linux-arm/crypto/fipsmodule/ghashv8-armx32.S\ ++ linux-arm/crypto/fipsmodule/sha1-armv4-large.S\ ++ linux-arm/crypto/fipsmodule/sha256-armv4.S\ ++ linux-arm/crypto/fipsmodule/sha512-armv4.S\ ++ linux-arm/crypto/fipsmodule/vpaes-armv7.S\ ++ linux-arm/crypto/test/trampoline-armv4.S\ ++ src/crypto/curve25519/asm/x25519-asm-arm.S\ ++ src/crypto/poly1305/poly1305_arm_asm.S\ ++ ++linux_ppc64le_sources := \ ++ linux-ppc64le/crypto/fipsmodule/aesp8-ppc.S\ ++ linux-ppc64le/crypto/fipsmodule/ghashp8-ppc.S\ ++ linux-ppc64le/crypto/test/trampoline-ppc.S\ ++ ++linux_x86_sources := \ ++ linux-x86/crypto/chacha/chacha-x86.S\ ++ linux-x86/crypto/fipsmodule/aesni-x86.S\ ++ linux-x86/crypto/fipsmodule/bn-586.S\ ++ linux-x86/crypto/fipsmodule/co-586.S\ ++ linux-x86/crypto/fipsmodule/ghash-ssse3-x86.S\ ++ linux-x86/crypto/fipsmodule/ghash-x86.S\ ++ linux-x86/crypto/fipsmodule/md5-586.S\ ++ linux-x86/crypto/fipsmodule/sha1-586.S\ ++ linux-x86/crypto/fipsmodule/sha256-586.S\ ++ linux-x86/crypto/fipsmodule/sha512-586.S\ ++ linux-x86/crypto/fipsmodule/vpaes-x86.S\ ++ linux-x86/crypto/fipsmodule/x86-mont.S\ ++ linux-x86/crypto/test/trampoline-x86.S\ ++ ++linux_x86_64_sources := \ ++ linux-x86_64/crypto/chacha/chacha-x86_64.S\ ++ linux-x86_64/crypto/cipher_extra/aes128gcmsiv-x86_64.S\ ++ linux-x86_64/crypto/cipher_extra/chacha20_poly1305_x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/aesni-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/ghash-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/md5-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/p256-x86_64-asm.S\ ++ linux-x86_64/crypto/fipsmodule/p256_beeu-x86_64-asm.S\ ++ linux-x86_64/crypto/fipsmodule/rdrand-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/rsaz-avx2.S\ ++ linux-x86_64/crypto/fipsmodule/sha1-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/sha256-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/sha512-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S\ ++ linux-x86_64/crypto/fipsmodule/x86_64-mont.S\ ++ linux-x86_64/crypto/fipsmodule/x86_64-mont5.S\ ++ linux-x86_64/crypto/test/trampoline-x86_64.S\ ++ src/crypto/hrss/asm/poly_rq_mul.S\ ++ diff --cc debian/ssl_test.mk index 0000000,0000000..296c2b8 new file mode 100644 --- /dev/null +++ b/debian/ssl_test.mk @@@ -1,0 -1,0 +1,38 @@@ ++include debian/sources.mk ++ ++NAME = ssl_test ++ ++SOURCES = $(ssl_test_sources) ++SOURCES_C = $(filter %.c,$(SOURCES)) ++OBJECTS_C = $(SOURCES_C:.c=.o) ++SOURCES_CC = $(filter %.cc,$(SOURCES)) ++OBJECTS_CC = $(SOURCES_CC:.cc=.o) ++ ++CFLAGS += -std=gnu11 ++CXXFLAGS += -std=gnu++2a ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Ldebian/out \ ++ -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ ++ -lcrypto \ ++ -lgtest \ ++ -lpthread \ ++ -lssl \ ++ -ltest_support \ ++ ++# -latomic should be the last library specified ++# https://github.com/android/ndk/issues/589 ++ifeq ($(DEB_HOST_ARCH), armel) ++ LDFLAGS += -latomic ++endif ++ ++build: $(OBJECTS_C) $(OBJECTS_CC) ++ $(CXX) $^ -o debian/out/$(NAME) $(LDFLAGS) ++ ++$(OBJECTS_C): %.o: %.c ++ $(CC) -c -o $@ $< $(CFLAGS) $(CPPFLAGS) ++ ++$(OBJECTS_CC): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/tests/control index 0000000,0000000..185dbb3 new file mode 100644 --- /dev/null +++ b/debian/tests/control @@@ -1,0 -1,0 +1,3 @@@ ++Test-Command: bssl-tool genrsa ++Architecture: armel armhf arm64 amd64 i386 ppc64el mipsel mips64el ia64 kfreebsd-amd64 kfreebsd-i386 riscv64 sh4 x32 ++Depends: android-boringssl diff --cc debian/tool_test.mk index 0000000,0000000..f11d0a7 new file mode 100644 --- /dev/null +++ b/debian/tool_test.mk @@@ -1,0 -1,0 +1,22 @@@ ++include debian/sources.mk ++ ++NAME = bssl-tool ++ ++SOURCES = $(tool_sources) ++OBJECTS = $(SOURCES:.cc=.o) ++ ++CXXFLAGS += -std=gnu++2a ++CPPFLAGS += \ ++ -Isrc/include \ ++ ++LDFLAGS += \ ++ -Ldebian/out \ ++ -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ ++ -lcrypto \ ++ -lssl \ ++ ++build: $(OBJECTS) ++ $(CXX) $^ -o debian/out/$(NAME) $(LDFLAGS) ++ ++$(OBJECTS): %.o: %.cc ++ $(CXX) -c -o $@ $< $(CXXFLAGS) $(CPPFLAGS) diff --cc debian/watch index 0000000,0000000..543d834 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,9 @@@ ++# uscan --download-version 12.1.0_r5 ++ ++version=4 ++opts="pagemangle=s%\">android-%\.tar\.gz\">android-%g;s%/\+/refs/tags/%/+archive/%g, \ ++ oversionmangle=s%_r(\d+|\d+\.\d+|\w)%+r$1%, \ ++ repack, compression=xz, \ ++ filenamemangle=s%[\w\/\.:]+\+archive\/android-%@PACKAGE@-%" \ ++https://android.googlesource.com/platform/external/boringssl/+refs \ ++ [\w\/]+\+archive\/android-([0-9\.]+_r\d+|\d+\.\d+|\w)\.tar\.gz