commit 44e7b984c4d0ac98a00e2f9ca6fdb77551b6337e
parent 91d4abc35e3ec60ee61f6ba7456d18c7c6bc8451
Author: Jack Mordaunt <jackmordaunt.dev@gmail.com>
Date: Wed, 3 Jan 2024 19:04:18 +0800
tools(transpile): ensure all compiler names match
If the configure CC doesn't match the environment CC ccgo fails to work.
Signed-off-by: Jack Mordaunt <jackmordaunt.dev@gmail.com>
Diffstat:
1 file changed, 46 insertions(+), 18 deletions(-)
diff --git a/tools/transpile.sh b/tools/transpile.sh
@@ -6,9 +6,16 @@ cd ./c-lib/
# Linux transpile.
+NATIVE_CC=$(which gcc)
+NATIVE_CXX=$(which c++)
+NATIVE_AR=$(which ar)
+
make distclean || true
./autogen.sh
./configure \
+ CC=$NATIVE_CC \
+ CXX=$NATIVE_CXX \
+ --host=x86_64-linux-gnu \
--disable-libwebpmux \
--disable-libwebpdemux \
--disable-sse4.1 \
@@ -27,12 +34,14 @@ make distclean || true
rm cdb-linux.json || true
-CC=$(which gcc) \
-AR=$(which ar) \
+CC=$NATIVE_CC \
+CXX=$NATIVE_CXX \
+AR=$NATIVE_AR \
ccgo -compiledb cdb-linux.json make
-CC=$(which gcc) \
-AR=$(which ar) \
+CC=$NATIVE_CC \
+CXX=$NATIVE_CXX \
+AR=$NATIVE_AR \
ccgo -pkgname webp -trace-translation-units -o ../lib/transpiled/webp/libwebp_linux_amd64.go cdb-linux.json src/.libs/libwebp.a
gofmt -s -w ../lib/transpiled/webp/libwebp_linux_amd64.go
@@ -40,10 +49,15 @@ gofmt -s -w ../lib/transpiled/webp/libwebp_linux_amd64.go
# Linux arm64.
LINUX_ARM_HOST=aarch64-linux-gnu
+LINUX_ARM_CC=$(which $LINUX_ARM_HOST-gcc)
+LINUX_ARM_CXX=$(which $LINUX_ARM_HOST-c++)
+LINUX_ARM_AR=$(which $LINUX_ARM_HOST-ar)
make distclean || true
./autogen.sh
./configure \
+ CC=$LINUX_ARM_CC \
+ CXX=$LINUX_ARM_CXX \
--host=$LINUX_ARM_HOST \
--disable-libwebpmux \
--disable-libwebpdemux \
@@ -63,12 +77,14 @@ make distclean || true
rm cdb-linux-arm64.json || true
-CC=$(which $LINUX_ARM_HOST-gcc) \
-AR=$(which $LINUX_ARM_HOST-ar) \
+CC=$LINUX_ARM_CC \
+CXX=$LINUX_ARM_CXX \
+AR=$LINUX_ARM_AR \
ccgo -compiledb cdb-linux-arm64.json make
-CC=$(which $LINUX_ARM_HOST-gcc) \
-AR=$(which $LINUX_ARM_HOST-ar) \
+CC=$LINUX_ARM_CC \
+CXX=$LINUX_ARM_CXX \
+AR=$LINUX_ARM_AR \
ccgo -pkgname webp -trace-translation-units -o ../lib/transpiled/webp/libwebp_linux_arm64.go cdb-linux-arm64.json src/.libs/libwebp.a
gofmt -s -w ../lib/transpiled/webp/libwebp_linux_arm64.go
@@ -76,12 +92,15 @@ gofmt -s -w ../lib/transpiled/webp/libwebp_linux_arm64.go
# macOS transpile.
MACOS_HOST=x86_64-apple-darwin15
+MACOS_CC=$(which $MACOS_HOST-cc)
+MACOS_CXX=$(which $MACOS_HOST-c++)
+MACOS_AR=$(which $MACOS_HOST-ar)
make distclean || true
./autogen.sh
./configure \
- CC=$MACOS_HOST-cc \
- CXX=$MACOS_HOST-c++ \
+ CC=$MACOS_CC \
+ CXX=$MACOS_CXX \
--host=$MACOS_HOST \
--disable-libwebpmux \
--disable-libwebpdemux \
@@ -101,12 +120,14 @@ make distclean || true
rm cdb-darwin.json || true
-CC=$(which $MACOS_HOST-cc) \
-AR=$(which $MACOS_HOST-ar) \
+CC=$MACOS_CC \
+CXX=$MACOS_CXX \
+AR=$MACOS_AR \
ccgo -compiledb cdb-darwin.json make
-CC=$(which $MACOS_HOST-cc) \
-AR=$(which $MACOS_HOST-ar) \
+CC=$MACOS_CC \
+CXX=$MACOS_CXX \
+AR=$MACOS_AR \
ccgo -pkgname webp -trace-translation-units -o ../lib/transpiled/webp/libwebp_darwin_amd64.go cdb-darwin.json src/.libs/libwebp.a
gofmt -s -w ../lib/transpiled/webp/libwebp_darwin_amd64.go
@@ -114,10 +135,15 @@ gofmt -s -w ../lib/transpiled/webp/libwebp_darwin_amd64.go
# Windows transpile.
WINDOWS_HOST=x86_64-w64-mingw32
+WINDOWS_CC=$(which x86_64-w64-mingw32-gcc)
+WINDOWS_CXX=$(which x86_64-w64-mingw32-g++)
+WINDOWS_AR=$(which x86_64-w64-mingw32-ar)
make distclean || true
./autogen.sh
./configure \
+ CC=$WINDOWS_CC \
+ CXX=$WINDOWS_CXX \
--host=$WINDOWS_HOST \
--disable-libwebpmux \
--disable-libwebpdemux \
@@ -137,12 +163,14 @@ make distclean || true
rm cdb-windows.json || true
-CC=$(which $WINDOWS_HOST-gcc) \
-AR=$(which $WINDOWS_HOST-ar) \
+CC=$WINDOWS_CC \
+CXX=$WINDOWS_CXX \
+AR=$WINDOWS_AR \
ccgo -compiledb cdb-windows.json make
-CC=$(which $WINDOWS_HOST-gcc) \
-AR=$(which $WINDOWS_HOST-ar) \
+CC=$WINDOWS_CC \
+CXX=$WINDOWS_CXX \
+AR=$WINDOWS_AR \
ccgo -windows -pkgname webp -trace-translation-units -o ../lib/transpiled/webp/libwebp_windows_amd64.go cdb-windows.json src/.libs/libwebp.a
gofmt -s -w ../lib/transpiled/webp/libwebp_windows_amd64.go