mirror of
https://github.com/lwthiker/curl-impersonate.git
synced 2025-08-10 10:49:26 +00:00
Cross-compile armv7l binaries for 32-bit Raspberry Pi's (#167)
Build arm binaries for 32-bit architecture. Use patch based on https://github.com/curl/curl/pull/9054.
This commit is contained in:
15
.github/workflows/build-and-test-make.yml
vendored
15
.github/workflows/build-and-test-make.yml
vendored
@@ -33,6 +33,11 @@ jobs:
|
|||||||
host: aarch64-linux-gnu
|
host: aarch64-linux-gnu
|
||||||
capture_interface: eth0
|
capture_interface: eth0
|
||||||
make: make
|
make: make
|
||||||
|
- os: ubuntu-20.04
|
||||||
|
arch: arm
|
||||||
|
host: arm-linux-gnueabihf
|
||||||
|
capture_interface: eth0
|
||||||
|
make: make
|
||||||
- os: macos-11
|
- os: macos-11
|
||||||
arch: x86_64
|
arch: x86_64
|
||||||
host: x86_64-macos
|
host: x86_64-macos
|
||||||
@@ -55,10 +60,10 @@ jobs:
|
|||||||
# More dependencies for the tests
|
# More dependencies for the tests
|
||||||
sudo apt-get install tcpdump nghttp2-server libnss3
|
sudo apt-get install tcpdump nghttp2-server libnss3
|
||||||
|
|
||||||
- name: Install Ubuntu dependencies (aarch64)
|
- name: Install Ubuntu cross-compile dependencies (${{ matrix.arch }})
|
||||||
if: matrix.arch == 'aarch64'
|
if: matrix.os == 'ubuntu-20.04' && matrix.arch != 'x86_64'
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
|
sudo apt-get install gcc-${{ matrix.host }} g++-${{ matrix.host }}
|
||||||
|
|
||||||
- name: Install macOS dependencies
|
- name: Install macOS dependencies
|
||||||
if: matrix.os == 'macos-11'
|
if: matrix.os == 'macos-11'
|
||||||
@@ -177,7 +182,7 @@ jobs:
|
|||||||
${{ matrix.make }} firefox-build
|
${{ matrix.make }} firefox-build
|
||||||
${{ matrix.make }} firefox-checkbuild
|
${{ matrix.make }} firefox-checkbuild
|
||||||
${{ matrix.make }} firefox-install
|
${{ matrix.make }} firefox-install
|
||||||
|
|
||||||
- name: Prepare the tests
|
- name: Prepare the tests
|
||||||
if: matrix.arch == 'x86_64'
|
if: matrix.arch == 'x86_64'
|
||||||
run: |
|
run: |
|
||||||
@@ -250,4 +255,4 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
files: |
|
files: |
|
||||||
${{ env.release_file_lib }}
|
${{ env.release_file_lib }}
|
||||||
${{ env.release_file_bin }}
|
${{ env.release_file_bin }}
|
@@ -225,6 +225,7 @@ else
|
|||||||
;; \
|
;; \
|
||||||
*) \
|
*) \
|
||||||
use_64="0"; \
|
use_64="0"; \
|
||||||
|
nspr_configure_flags=""; \
|
||||||
;; \
|
;; \
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
@@ -2485,3 +2485,17 @@ index 5ff86c7f5..be26f91ea 100644
|
|||||||
NV1(CURLOPT_TCP_NODELAY, 1),
|
NV1(CURLOPT_TCP_NODELAY, 1),
|
||||||
NV1(CURLOPT_PROXY_SSL_VERIFYPEER, 1),
|
NV1(CURLOPT_PROXY_SSL_VERIFYPEER, 1),
|
||||||
NV1(CURLOPT_PROXY_SSL_VERIFYHOST, 1),
|
NV1(CURLOPT_PROXY_SSL_VERIFYHOST, 1),
|
||||||
|
diff --git a/lib/easy_lock.h b/lib/easy_lock.h
|
||||||
|
index 819f50ce8..1f54289ce 100644
|
||||||
|
--- a/lib/easy_lock.h
|
||||||
|
+++ b/lib/easy_lock.h
|
||||||
|
@@ -36,6 +36,9 @@
|
||||||
|
|
||||||
|
#elif defined (HAVE_ATOMIC)
|
||||||
|
#include <stdatomic.h>
|
||||||
|
+#if defined(HAVE_SCHED_YIELD)
|
||||||
|
+#include <sched.h>
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#define curl_simple_lock atomic_bool
|
||||||
|
#define CURL_SIMPLE_LOCK_INIT false
|
||||||
|
@@ -1354,7 +1354,7 @@ index cb162755d..13ee571aa 100644
|
|||||||
+
|
+
|
||||||
+ case $host_cpu in
|
+ case $host_cpu in
|
||||||
+ arm)
|
+ arm)
|
||||||
+ addlib="$addlib -larmv8_c_lib"
|
+ addlib="$addlib -larmv8_c_lib -l:libgcm-aes-arm32-neon_c_lib.a"
|
||||||
+ ;;
|
+ ;;
|
||||||
+ aarch64)
|
+ aarch64)
|
||||||
+ addlib="$addlib -larmv8_c_lib -lgcm-aes-aarch64_c_lib"
|
+ addlib="$addlib -larmv8_c_lib -lgcm-aes-aarch64_c_lib"
|
||||||
@@ -1498,3 +1498,18 @@ index 706f0aac3..0ad94622e 100644
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# if unit tests are enabled, build a static library to link them with
|
# if unit tests are enabled, build a static library to link them with
|
||||||
|
diff --git a/lib/easy_lock.h b/lib/easy_lock.h
|
||||||
|
index 819f50ce8..1f54289ce 100644
|
||||||
|
--- a/lib/easy_lock.h
|
||||||
|
+++ b/lib/easy_lock.h
|
||||||
|
@@ -36,6 +36,9 @@
|
||||||
|
|
||||||
|
#elif defined (HAVE_ATOMIC)
|
||||||
|
#include <stdatomic.h>
|
||||||
|
+#if defined(HAVE_SCHED_YIELD)
|
||||||
|
+#include <sched.h>
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#define curl_simple_lock atomic_bool
|
||||||
|
#define CURL_SIMPLE_LOCK_INIT false
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user