Browse Source

Update Rack plugin toolchain to latest available version of cross-compilers. Update to macOS SDK 11.1 and require minimum macOS version of 10.9.

arch-based-toolchain
Christoph Scholtes 3 years ago
parent
commit
11a1856a47
3 changed files with 20 additions and 21 deletions
  1. +2
    -2
      .gitignore
  2. +2
    -2
      Dockerfile
  3. +16
    -17
      Makefile

+ 2
- 2
.gitignore View File

@@ -1,5 +1,5 @@
MacOSX10.13.sdk.tar.*
MacOSX*.sdk.tar.*
local/ local/
plugin-build/ plugin-build/
Rack-SDK/ Rack-SDK/
osxcross/
osxcross/

+ 2
- 2
Dockerfile View File

@@ -23,7 +23,7 @@ RUN make dep-ubuntu
RUN rm -rf /var/lib/apt/lists/* RUN rm -rf /var/lib/apt/lists/*


USER build USER build
COPY MacOSX10.13.sdk.tar.* /home/build/rack-plugin-toolchain/
COPY MacOSX11.1.sdk.tar.* /home/build/rack-plugin-toolchain/


# Build toolchains # Build toolchains
RUN make toolchain-mac RUN make toolchain-mac
@@ -33,4 +33,4 @@ RUN make toolchain-lin
# Install Rack SDK # Install Rack SDK
RUN make rack-sdk RUN make rack-sdk


RUN rm MacOSX10.13.sdk.tar.*
RUN rm MacOSX11.1.sdk.tar.*

+ 16
- 17
Makefile View File

@@ -12,14 +12,13 @@ all: toolchain-all


crosstool-ng := $(LOCAL_DIR)/bin/ct-ng crosstool-ng := $(LOCAL_DIR)/bin/ct-ng
$(crosstool-ng): $(crosstool-ng):
wget -c "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.24.0.tar.xz"
tar -xf crosstool-ng-1.24.0.tar.xz
rm crosstool-ng-1.24.0.tar.xz
cd crosstool-ng-1.24.0 && ./bootstrap
cd crosstool-ng-1.24.0 && ./configure --prefix="$(LOCAL_DIR)"
cd crosstool-ng-1.24.0 && make
cd crosstool-ng-1.24.0 && make install
rm -rf crosstool-ng-1.24.0
git clone https://github.com/crosstool-ng/crosstool-ng.git
cd crosstool-ng && git checkout 02d1503f6769be4ad8058b393d4245febced459f
cd crosstool-ng && ./bootstrap
cd crosstool-ng && ./configure --prefix="$(LOCAL_DIR)"
cd crosstool-ng && make
cd crosstool-ng && make install
rm -rf crosstool-ng




toolchain-lin := $(LOCAL_DIR)/x86_64-ubuntu16.04-linux-gnu toolchain-lin := $(LOCAL_DIR)/x86_64-ubuntu16.04-linux-gnu
@@ -44,21 +43,21 @@ $(toolchain-win): $(crosstool-ng)


toolchain-mac := $(LOCAL_DIR)/osxcross toolchain-mac := $(LOCAL_DIR)/osxcross
toolchain-mac: $(toolchain-mac) toolchain-mac: $(toolchain-mac)
MAC_CLANG_VERSION := 10.0.1
MAC_BINUTILS_VERSION := 2.35
MAC_CLANG_VERSION := 12.0.1
MAC_BINUTILS_VERSION := 2.37
# Binaries from ./build.sh must be available in order to run ./build_binutils.sh # Binaries from ./build.sh must be available in order to run ./build_binutils.sh
$(toolchain-mac): export PATH := $(LOCAL_DIR)/osxcross/bin:$(PATH) $(toolchain-mac): export PATH := $(LOCAL_DIR)/osxcross/bin:$(PATH)
$(toolchain-mac): $(toolchain-mac):
# Download osxcross # Download osxcross
git clone "https://github.com/tpoechtrager/osxcross.git" osxcross git clone "https://github.com/tpoechtrager/osxcross.git" osxcross
cd osxcross && git checkout a791ad4fca685ea9fceb520b77db586881cd3f3d
cd osxcross && git checkout 0f87f567dfaf98460244471ad6c0f4311d62079c


# Build clang # Build clang
cd osxcross && UNATTENDED=1 DISABLE_BOOTSTRAP=1 INSTALLPREFIX="$(LOCAL_DIR)" CLANG_VERSION=$(MAC_CLANG_VERSION) OCDEBUG=1 ./build_clang.sh cd osxcross && UNATTENDED=1 DISABLE_BOOTSTRAP=1 INSTALLPREFIX="$(LOCAL_DIR)" CLANG_VERSION=$(MAC_CLANG_VERSION) OCDEBUG=1 ./build_clang.sh
cd osxcross/build/llvm-$(MAC_CLANG_VERSION).src/build && make install cd osxcross/build/llvm-$(MAC_CLANG_VERSION).src/build && make install


# Build osxcross # Build osxcross
cp MacOSX10.13.sdk.tar.* osxcross/tarballs/
cp MacOSX11.1.sdk.tar.* osxcross/tarballs/
cd osxcross && UNATTENDED=1 TARGET_DIR="$(LOCAL_DIR)/osxcross" ./build.sh cd osxcross && UNATTENDED=1 TARGET_DIR="$(LOCAL_DIR)/osxcross" ./build.sh


# Build Mac version of binutils and build LLVM gold # Build Mac version of binutils and build LLVM gold
@@ -92,9 +91,9 @@ PLUGIN_DIR ?=




plugin-build-mac: export PATH := $(LOCAL_DIR)/osxcross/bin:$(PATH) plugin-build-mac: export PATH := $(LOCAL_DIR)/osxcross/bin:$(PATH)
plugin-build-mac: export CC := x86_64-apple-darwin17-clang
plugin-build-mac: export CXX := x86_64-apple-darwin17-clang++-libc++
plugin-build-mac: export STRIP := x86_64-apple-darwin17-strip
plugin-build-mac: export CC := x86_64-apple-darwin20.2-clang
plugin-build-mac: export CXX := x86_64-apple-darwin20.2-clang++-libc++
plugin-build-mac: export STRIP := x86_64-apple-darwin20.2-strip




plugin-build-win: export PATH := $(LOCAL_DIR)/x86_64-w64-mingw32/bin:$(PATH) plugin-build-win: export PATH := $(LOCAL_DIR)/x86_64-w64-mingw32/bin:$(PATH)
@@ -184,14 +183,14 @@ dep-arch-linux:




docker-build: docker-build:
docker build --tag rack-plugin-toolchain:1 .
docker build --tag rack-plugin-toolchain:2 .




DOCKER_RUN := docker run --rm --interactive --tty \ DOCKER_RUN := docker run --rm --interactive --tty \
--volume=$(PLUGIN_DIR):/home/build/plugin-src \ --volume=$(PLUGIN_DIR):/home/build/plugin-src \
--volume=$(PWD)/$(PLUGIN_BUILD_DIR):/home/build/rack-plugin-toolchain/$(PLUGIN_BUILD_DIR) \ --volume=$(PWD)/$(PLUGIN_BUILD_DIR):/home/build/rack-plugin-toolchain/$(PLUGIN_BUILD_DIR) \
--env PLUGIN_DIR=/home/build/plugin-src \ --env PLUGIN_DIR=/home/build/plugin-src \
rack-plugin-toolchain:1 \
rack-plugin-toolchain:2 \
/bin/bash /bin/bash


docker-run: docker-run:


Loading…
Cancel
Save