Compare commits

..

27 Commits

Author SHA1 Message Date
uazo
f6ee667765 remove is_cfi and use_cfi_cast from windows build 2022-10-14 11:59:47 +02:00
uazo
c3eb2dcb7b fix WINDOWSSDKDIR value 2022-10-14 08:35:48 +02:00
uazo
bd3bf8e9cf Remove generate_linker_map for windows build 2022-10-14 08:11:06 +02:00
uazo
7ce76c0224 Add win crossbuild 2022-10-13 16:44:02 +02:00
uazo
37512410b0 Add rc build 2022-10-13 15:28:59 +02:00
uazo
772162a0db re-enable depot tools patch 2022-10-13 14:39:54 +02:00
uazo
3d1f8a1c0d in preparation for the build for windows 2022-10-13 12:23:20 +02:00
uazo
9832622c39 attach win_sdk folder 2022-10-05 15:26:27 +02:00
uazo
0e1c4bc71a add win_sdk folder to runner 2022-10-05 15:24:56 +02:00
uazo
c59ea691bd Update README.md 2022-10-05 09:38:03 +02:00
uazo
daca99c6c5 Update export-patch-list.sh 2022-09-07 13:39:36 +02:00
uazo
e826c60239 changed method of creating new patch name 2022-09-07 11:43:26 +02:00
uazo
50441d00bc improved replacement 2022-09-07 11:11:24 +02:00
uazo
dc0253788a fix build clangd index 2022-08-02 17:21:58 +02:00
uazo
ddc84733e9 Update prepare-build.sh 2022-08-01 14:40:13 +02:00
uazo
3d2a3fb5fd try using github as source 2022-08-01 13:10:25 +02:00
uazo
6e62f4a85d Update prepare-build.sh 2022-08-01 10:16:21 +02:00
uazo
406a5d83c2 Using github 2022-08-01 08:28:45 +02:00
uazo
963ab065f9 Update Dockerfile 2022-08-01 08:02:46 +02:00
uazo
e15c9f918b Update Dockerfile 2022-08-01 08:01:31 +02:00
uazo
aa33b64d6c Using raw.githubusercontent.com
Since original is down
2022-08-01 07:59:50 +02:00
uazo
4893074e00 Do not automatically update DEPOT_TOOLS 2022-07-15 10:10:56 +02:00
uazo
abf39d8c09 Update depot_tools.diff 2022-07-15 10:02:47 +02:00
uazo
fd177a7772 change skip_clangd_unsupported_options 2022-07-12 17:41:44 +02:00
uazo
2de67fd5af fix sudo error
fix "sudo must be owned by uid 0 and have the setuid bit set"
2022-07-12 15:14:35 +02:00
uazo
a284b224fb Update Dockerfile 2022-07-08 19:32:23 +02:00
uazo
d5b30106a5 Add prerequisite for systemwebview target 2022-07-08 19:31:21 +02:00
10 changed files with 188 additions and 83 deletions

View File

@@ -22,6 +22,10 @@ on:
description: 'arch [arm64/x64]' description: 'arch [arm64/x64]'
required: true required: true
default: 'x64' default: 'x64'
targetos:
description: 'targetos [android/win]'
required: true
default: 'android'
type: type:
description: 'runner? [dev/ci]' description: 'runner? [dev/ci]'
required: true required: true
@@ -181,15 +185,22 @@ jobs:
USELOCALIMAGE: true # CUSTOM RUNNER: permit use of local images USELOCALIMAGE: true # CUSTOM RUNNER: permit use of local images
USEINTERNALNETWORK: true # CUSTOM RUNNER: create the docker network as internal USEINTERNALNETWORK: true # CUSTOM RUNNER: create the docker network as internal
WORKSPACE: /home/lg/working_dir WORKSPACE: /home/lg/working_dir
# kythe
KYTHE_CORPUS: chromium.googlesource.com/chromium/src KYTHE_CORPUS: chromium.googlesource.com/chromium/src
KYTHE_ROOT_DIRECTORY: /home/lg/working_dir/chromium/src KYTHE_ROOT_DIRECTORY: /home/lg/working_dir/chromium/src
KYTHE_OUTPUT_DIRECTORY: /home/lg/working_dir/chromium/src/out/bromite/kythe KYTHE_OUTPUT_DIRECTORY: /home/lg/working_dir/chromium/src/out/bromite/kythe
# cross build
DEPOT_TOOLS_WIN_TOOLCHAIN_BASE_URL: /win_sdk/10.0.20348.0/
WINDOWSSDKDIR: "/win_sdk/10.0.20348.0/Windows Kits/10/"
GYP_MSVS_OVERRIDE_PATH: /win_sdk/10.0.20348.0/
# compile in debug mode # compile in debug mode
TARGET_ISDEBUG: ${{ github.event.inputs.debug }} TARGET_ISDEBUG: ${{ github.event.inputs.debug }}
TARGET_CPU: ${{ github.event.inputs.build }} TARGET_CPU: ${{ github.event.inputs.build }}
TARGET_OS: ${{ github.event.inputs.targetos }}
volumes: volumes:
- /storage/images/${{ github.event.inputs.build }}/${{ github.event.inputs.sha }}:/home/lg/working_dir/chromium/src/out/bromite - /storage/images/${{ github.event.inputs.targetos }}/${{ github.event.inputs.build }}/${{ github.event.inputs.sha }}:/home/lg/working_dir/chromium/src/out/bromite
- /tmp/proxy:/tmp/proxy - /tmp/proxy:/tmp/proxy
- /win_sdk:/win_sdk
steps: steps:
- name: Prepare Build Container - name: Prepare Build Container
@@ -249,10 +260,15 @@ jobs:
if [[ OUT_PRESENT -eq 0 ]]; then if [[ OUT_PRESENT -eq 0 ]]; then
echo "::group::-------- gn gen" echo "::group::-------- gn gen"
[[ "$USEGOMA" = "true" ]] && \ if [[ "$TARGET_OS" = "android" ]]
gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") use_goma=true goma_dir=\"$WORKSPACE/goma\" $(cat ../../build_args.gni) " out/bromite \ then
|| \ [[ "$USEGOMA" = "true" ]] && \
gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") $(cat ../../build_args.gni) " out/bromite gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") use_goma=true goma_dir=\"$WORKSPACE/goma\" $(cat ../../build_args.gni) " out/bromite \
|| \
gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") $(cat ../../build_args.gni) " out/bromite
else
gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") target_cpu = \"x64\" target_os = \"win\" $(cat ../../build_args.gni) " out/bromite
fi
echo "::endgroup::" echo "::endgroup::"
echo "::group::-------- gn args" echo "::group::-------- gn args"
@@ -294,10 +310,15 @@ jobs:
PATH=$WORKSPACE/chromium/src/third_party/llvm-build/Release+Asserts/bin:$WORKSPACE/depot_tools/:/usr/local/go/bin:$WORKSPACE/mtool/bin:$PATH PATH=$WORKSPACE/chromium/src/third_party/llvm-build/Release+Asserts/bin:$WORKSPACE/depot_tools/:/usr/local/go/bin:$WORKSPACE/mtool/bin:$PATH
cd $WORKSPACE/chromium/src cd $WORKSPACE/chromium/src
[[ "$USEGOMA" = "true" ]] && \ if [[ "$TARGET_OS" = "android" ]]
autoninja -j $GOMAJOBS -C out/bromite chrome_public_apk \ then
|| \ [[ "$USEGOMA" = "true" ]] && \
autoninja -C out/bromite chrome_public_apk autoninja -j $GOMAJOBS -C out/bromite chrome_public_apk \
|| \
autoninja -C out/bromite chrome_public_apk
else
autoninja -C out/bromite chrome
fi
- name: Get ninja logs - name: Get ninja logs
shell: bash shell: bash
@@ -363,12 +384,14 @@ jobs:
run: | run: |
PATH=$WORKSPACE/chromium/src/third_party/llvm-build/Release+Asserts/bin:$WORKSPACE/depot_tools/:/usr/local/go/bin:$WORKSPACE/mtool/bin:$PATH PATH=$WORKSPACE/chromium/src/third_party/llvm-build/Release+Asserts/bin:$WORKSPACE/depot_tools/:/usr/local/go/bin:$WORKSPACE/mtool/bin:$PATH
cd $WORKSPACE/chromium/src cd $WORKSPACE/chromium/src
$WORKSPACE/ninja/ninja -C $WORKSPACE/chromium/src/out/bromite -a chrome_public_apk \
-t compdb cc cxx objc objcxx >$WORKSPACE/chromium/src/out/bromite/compile_commands.json
test -f out/bromite/bromite.idx || \ test -f out/bromite/bromite.idx || \
/home/lg/working_dir/clangd_snapshot_20211205/bin/clangd-indexer --executor=all-TUs out/bromite/compile_commands.json >out/bromite/bromite.idx cp -r out/bromite out/clangd && \
gn gen --args="import(\"/home/lg/working_dir/bromite/build/bromite.gn_args\") $(cat ../../build_args.gni) skip_clangd_unsupported_options = true" out/clangd && \
$WORKSPACE/ninja/ninja -C $WORKSPACE/chromium/src/out/clangd -a chrome_public_apk \
-t compdb cc cxx objc objcxx >$WORKSPACE/chromium/src/out/clangd/compile_commands.json && \
/home/lg/working_dir/clangd_snapshot_20211205/bin/clangd-indexer --executor=all-TUs out/clangd/compile_commands.json >out/bromite/bromite.idx && \
rm -rf out/clangd
- name: Generate Supersize data - name: Generate Supersize data
if: ${{ github.event.inputs.debug == 'false' }} if: ${{ github.event.inputs.debug == 'false' }}

View File

@@ -1,3 +1,42 @@
# bromite-buildtools # bromite-buildtools
this repo contains my build machine and some scripts I use for Bromite development. the ci uses a modified version of the gihub runner (avaiable [here](https://github.com/uazo/runner)) and use [sysbox](https://github.com/nestybox/sysbox) to improve security. it also contains everything you need to use a self-hosted modified version of [goma](https://github.com/uazo/goma-server) for a multi-machine build this repo contains my build machine and some scripts I use for Bromite development. the ci uses a modified version of the gihub runner (avaiable [here](https://github.com/uazo/runner)) and use [sysbox](https://github.com/nestybox/sysbox) to improve security. it also contains everything you need to use a self-hosted modified version of [goma](https://github.com/uazo/goma-server) for a multi-machine build
### Setting-up
1. Prepare folders
```
cd ~ && mkdir gh-runner
cd gh-runner && mkdir docker-inner
SYSBOX_UID=$(cat /etc/subuid | grep sysbox | cut -d : -f 2)
sudo chown $SYSBOX_UID:$SYSBOX_UID docker-inner/
mkdir /storage
sudo chown $SYSBOX_UID:$SYSBOX_UID /storage
```
2. Clone this repo
3. Prepare `.env`
```
cd bromite-buildtools/images/github-runner/
cp .env.example .env
```
4. Edit `.env` file
```
RUNNER_NAME=pd-gh-runner
GITHUB_PERSONAL_TOKEN=<git-token>
GITHUB_OWNER=uazo
GITHUB_REPOSITORY=bromite-buildtools
RUNNER_LABELS=dev
ALLOWEDAUTHORSLIST=uazo
```
5. Start the runner
```
cd bromite-buildtools/images/github-runner/
./start-runner.sh
```

View File

@@ -18,15 +18,11 @@ for patch in $ALLPATCHS_E; do
if [ -z "$PATCH_FILE" ] if [ -z "$PATCH_FILE" ]
then then
#git -C ~/chromium/src/ show -s $patch
PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | tail -n 1) PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | tail -n 1)
if [[ "$PATCH_FILE" != *".patch" ]]; then if [[ "$PATCH_FILE" != *".patch" ]]; then
PATCH_FILE=$NO_NAME.patch PATCH_FILE=00$(git -C ~/chromium/src/ show -s $patch | head -n 5 | tail -n 1 | xargs | tr " " - | tr [:punct:] -).patch
NO_NAME=$NO_NAME.1 echo New Patch: ${PATCH_FILE}
echo No Name ${NO_NAME}, press return
fi fi
read -n 1
fi fi
bash ~/bromite-buildtools/export-single-patch.sh $patch $PATCH_FILE bash ~/bromite-buildtools/export-single-patch.sh $patch $PATCH_FILE

View File

@@ -16,6 +16,9 @@ for patch in $ALLPATCHS_E; do
if [[ "$PATCH_FILE" == *"Automated-domain-substitution"* ]]; then if [[ "$PATCH_FILE" == *"Automated-domain-substitution"* ]]; then
continue continue
fi fi
if [[ -z "$PATCH_FILE" ]]; then
PATCH_FILE=00$(git -C ~/chromium/src/ show -s $patch | head -n 5 | tail -n 1 | xargs | tr " " - | tr [:punct:] -).patch
fi
echo $PATCH_FILE >>~/bromite/build/patches-new/patch-list echo $PATCH_FILE >>~/bromite/build/patches-new/patch-list

View File

@@ -16,16 +16,29 @@ fi
git -C ~/chromium/src/ format-patch -1 --keep-subject --stdout --full-index --zero-commit --no-signature $patch >~/bromite/build/patches-new/$PATCH_FILE git -C ~/chromium/src/ format-patch -1 --keep-subject --stdout --full-index --zero-commit --no-signature $patch >~/bromite/build/patches-new/$PATCH_FILE
echo " exported" echo " exported"
CHANGE_REF=""
while read line; do while read line; do
#echo $line for i in {1..5}
if [[ "$line" == index* ]]; then do
next_line=$(grep -A1 "${line}" ~/bromite/build/patches-new/$PATCH_FILE | tail -n 1 ) if [[ "$line" == index* ]]; then
if [[ "$next_line" != "GIT binary patch" ]]; then read next_line
sed -i "/^$line/d" ~/bromite/build/patches-new/$PATCH_FILE if [[ "$next_line" != "GIT binary patch" ]]; then
CHANGE_REF=${CHANGE_REF}"/^${line}/d;"
break
else
line=$next_line
continue
fi
else
break
fi fi
fi done
done <~/bromite/build/patches-new/$PATCH_FILE done <~/bromite/build/patches-new/$PATCH_FILE
if [ "$CHANGE_REF" ]
then
sed -i "$CHANGE_REF" ~/bromite/build/patches-new/$PATCH_FILE
fi
sed -i '/^From 0000000000000000000000000000000000000000/d' ~/bromite/build/patches-new/$PATCH_FILE sed -i '/^From 0000000000000000000000000000000000000000/d' ~/bromite/build/patches-new/$PATCH_FILE
sed -i '/^FILE:/d' ~/bromite/build/patches-new/$PATCH_FILE sed -i '/^FILE:/d' ~/bromite/build/patches-new/$PATCH_FILE
sed -i '/^ mode change/d' ~/bromite/build/patches-new/$PATCH_FILE sed -i '/^ mode change/d' ~/bromite/build/patches-new/$PATCH_FILE

View File

@@ -1,7 +1,6 @@
declare_args() { declare_args() {
_is_debug_build = "" _is_debug_build = ""
target_cpu = "x64"
} }
_is_debug_build = getenv("TARGET_ISDEBUG") _is_debug_build = getenv("TARGET_ISDEBUG")
@@ -15,14 +14,21 @@ if(getenv("TARGET_CPU") != "") {
enable_kythe_annotations = true enable_kythe_annotations = true
# clang_use_chrome_plugins = false # clang_use_chrome_plugins = false
chrome_public_manifest_package = "org.bromite.bromite.dev" if (target_os == "android") {
chrome_public_manifest_package = "org.bromite.bromite.dev"
}
if(_is_debug_build == "true") { if(_is_debug_build == "true") {
# print("Debug build on") # print("Debug build on")
is_debug = true is_debug = true
is_official_build = false is_official_build = false
dcheck_always_on = true dcheck_always_on = true
symbol_level = 1 if (target_os == "win") {
symbol_level = 0
use_large_pdbs = true
} else {
symbol_level = 1
}
strip_debug_info = false strip_debug_info = false
generate_linker_map = false generate_linker_map = false
@@ -31,5 +37,12 @@ if(_is_debug_build == "true") {
is_cfi = false # disable it is_cfi = false # disable it
use_cfi_cast = false # disable it use_cfi_cast = false # disable it
} else { } else {
generate_linker_map = true if (target_os == "android") {
generate_linker_map = true
}
if (target_os == "win") {
is_cfi = false # disable it
use_cfi_cast = false # disable it
}
} }

View File

@@ -16,13 +16,14 @@ RUN dpkg --add-architecture i386
RUN apt-get update &&\ RUN apt-get update &&\
DEBIAN_FRONTEND=noninteractive \ DEBIAN_FRONTEND=noninteractive \
apt-get -f -y install sudo lsb-release cl-base64 bash wget apt-utils python sed tzdata build-essential lib32gcc-9-dev apt-get -f -y install sudo lsb-release cl-base64 bash wget apt-utils python sed tzdata build-essential lib32gcc-9-dev g++-multilib
ENV user lg ENV user lg
RUN useradd -m -d /home/${user} ${user} && \ RUN useradd -m -d /home/${user} ${user} && \
chown -R ${user} /home/${user} && \ chown -R ${user} /home/${user} && \
adduser ${user} sudo && \ adduser ${user} sudo && \
chmod 4755 /usr/bin/sudo && \
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER ${user} USER ${user}
@@ -31,18 +32,13 @@ USER ${user}
WORKDIR /home/${user} WORKDIR /home/${user}
RUN wget https://chromium.googlesource.com/chromium/src/+/refs/tags/$VERSION/build/install-build-deps.sh?format=TEXT -O install-build-deps.sh.base64 \ RUN wget https://raw.githubusercontent.com/chromium/chromium/$VERSION/build/install-build-deps.sh \
&& \ && \
wget https://chromium.googlesource.com/chromium/src/+/refs/tags/$VERSION/build/install-build-deps-android.sh?format=TEXT -O install-build-deps-android.sh.base64 \ wget https://raw.githubusercontent.com/chromium/chromium/$VERSION/build/install-build-deps-android.sh \
&& \ && \
base64 -d install-build-deps.sh.base64 >install-build-deps.sh && \
base64 -d install-build-deps-android.sh.base64 >install-build-deps-android.sh && \
sed -i 's/snapcraft/wget/' install-build-deps.sh && \ sed -i 's/snapcraft/wget/' install-build-deps.sh && \
chmod +x ./install-build-deps.sh && \ chmod +x ./install-build-deps.sh && \
chmod +x ./install-build-deps-android.sh && \ chmod +x ./install-build-deps-android.sh && \
sudo ./install-build-deps.sh --no-prompt --lib32 --no-chromeos-fonts && \ sudo ./install-build-deps.sh --no-prompt --lib32 --no-chromeos-fonts && \
sudo ./install-build-deps-android.sh --no-prompt sudo ./install-build-deps-android.sh --no-prompt

View File

@@ -1,57 +1,60 @@
diff --git a/gclient_scm.py b/gclient_scm.py diff --git a/gclient_scm.py b/gclient_scm.py
index f58c07a8..c8409726 100644
--- a/gclient_scm.py --- a/gclient_scm.py
+++ b/gclient_scm.py +++ b/gclient_scm.py
@@ -1012,28 +1012,35 @@ class GitWrapper(SCMWrapper): @@ -1137,31 +1137,29 @@ class GitWrapper(SCMWrapper):
gclient_utils.safe_makedirs(parent_dir) clone_cmd.append(url)
template_dir = None template_dir = None
+ use_fetch = False + use_fetch = False
+ +
+ tmp_dir = tempfile.mkdtemp( + tmp_dir = tempfile.mkdtemp(
+ prefix='_gclient_%s_' % os.path.basename(self.checkout_path), + prefix='_gclient_%s_' % os.path.basename(self.checkout_path),
+ dir=parent_dir) + dir=parent_dir)
+ +
if hasattr(options, 'no_history') and options.no_history: if hasattr(options, 'no_history') and options.no_history:
if gclient_utils.IsGitSha(revision): if gclient_utils.IsGitSha(revision):
# In the case of a subproject, the pinned sha is not necessarily the - # In the case of a subproject, the pinned sha is not necessarily the
# head of the remote branch (so we can't just use --depth=N). Instead, - # head of the remote branch (so we can't just use --depth=N). Instead,
# we tell git to fetch all the remote objects from SHA..HEAD by means of - # we tell git to fetch all the remote objects from SHA..HEAD by means
# a template git dir which has a 'shallow' file pointing to the sha. - # of a template git dir which has a 'shallow' file pointing to the
- template_dir = tempfile.mkdtemp( - # sha.
- prefix='_gclient_gittmp_%s' % os.path.basename(self.checkout_path), - template_dir = tempfile.mkdtemp(prefix='_gclient_gittmp_%s' %
- dir=parent_dir) - os.path.basename(self.checkout_path),
- self._Run(['init', '--bare', template_dir], options, cwd=self._root_dir) - dir=parent_dir)
- with open(os.path.join(template_dir, 'shallow'), 'w') as template_file: - self._Run(['init', '--bare', template_dir],
- template_file.write(revision) - options,
- clone_cmd.append('--template=' + template_dir) - cwd=self._root_dir)
+ self._Run(['init', tmp_dir], options, cwd=self._root_dir) - with open(os.path.join(template_dir, 'shallow'),
- 'w') as template_file:
- template_file.write(revision)
- clone_cmd.append('--template=' + template_dir)
+ self._Run(['init', tmp_dir], options, cwd=self._root_dir)
+ +
+ self._Run(['-C', tmp_dir, 'remote', 'add', 'origin', url], options, cwd=self._root_dir) + self._Run(['-C', tmp_dir, 'remote', 'add', 'origin', url], options, cwd=self._root_dir)
+ +
+ clone_cmd = cfg + ['-C', tmp_dir, 'fetch', '--progress'] + clone_cmd = cfg + ['-C', tmp_dir, 'fetch', '--progress']
+ clone_cmd.append('--depth=1') + clone_cmd.append('--depth=1')
+ clone_cmd.append(url) + clone_cmd.append(url)
+ clone_cmd.append(revision) + clone_cmd.append(revision)
+ use_fetch = True + use_fetch = True
else: else:
# Otherwise, we're just interested in the HEAD. Just use --depth. # Otherwise, we're just interested in the HEAD. Just use --depth.
clone_cmd.append('--depth=1') clone_cmd.append('--depth=1')
- tmp_dir = tempfile.mkdtemp( - tmp_dir = tempfile.mkdtemp(prefix='_gclient_%s_' %
- prefix='_gclient_%s_' % os.path.basename(self.checkout_path), - os.path.basename(self.checkout_path),
- dir=parent_dir) - dir=parent_dir)
try:
- clone_cmd.append(tmp_dir) - clone_cmd.append(tmp_dir)
+ if use_fetch == False: + if use_fetch == False:
+ clone_cmd.append(tmp_dir) + clone_cmd.append(tmp_dir)
+
if self.print_outbuf: try:
print_stdout = True self._Run(clone_cmd,
filter_fn = None @@ -1452,6 +1450,9 @@ class GitWrapper(SCMWrapper):
@@ -1328,6 +1335,9 @@ class GitWrapper(SCMWrapper):
if refspec: if refspec:
fetch_cmd.append(refspec) fetch_cmd.append(refspec)
+ if hasattr(options, 'no_history') and options.no_history: + if hasattr(options, 'no_history') and options.no_history:
+ fetch_cmd.append('--depth=1') + fetch_cmd.append('--depth=1')
+ +

View File

@@ -22,21 +22,26 @@ echo -e ${RED} -------- download chromium repo ${NC}
mkdir ./chromium mkdir ./chromium
cd ./chromium cd ./chromium
export DEPOT_TOOLS_UPDATE=0
gclient root gclient root
mkdir ./src mkdir ./src
cd ./src cd ./src
git init #CHR_SOURCE=https://chromium.googlesource.com/chromium/src.git
git remote add origin https://chromium.googlesource.com/chromium/src.git CHR_SOURCE=https://github.com/chromium/chromium.git
git fetch --depth 2 https://chromium.googlesource.com/chromium/src.git +refs/tags/$VERSION:chromium_$VERSION git init
git remote add origin $CHR_SOURCE
git fetch --depth 2 $CHR_SOURCE +refs/tags/$VERSION:chromium_$VERSION
git checkout $VERSION git checkout $VERSION
VERSION_SHA=$( git show-ref -s $VERSION | head -n1 ) VERSION_SHA=$( git show-ref -s $VERSION | head -n1 )
echo >../.gclient "solutions = [" echo >../.gclient "solutions = ["
echo >>../.gclient " { \"name\" : 'src'," echo >>../.gclient " { \"name\" : 'src',"
echo >>../.gclient " \"url\" : 'https://chromium.googlesource.com/chromium/src.git@$VERSION_SHA'," echo >>../.gclient " \"url\" : '$CHR_SOURCE@$VERSION_SHA',"
echo >>../.gclient " \"deps_file\" : 'DEPS'," echo >>../.gclient " \"deps_file\" : 'DEPS',"
echo >>../.gclient " \"managed\" : True," echo >>../.gclient " \"managed\" : True,"
echo >>../.gclient " \"custom_deps\" : {" echo >>../.gclient " \"custom_deps\" : {"
@@ -68,3 +73,16 @@ gclient runhooks
echo -e ${RED} -------- download objdump ${NC} echo -e ${RED} -------- download objdump ${NC}
tools/clang/scripts/update.py --package=objdump tools/clang/scripts/update.py --package=objdump
echo -e ${RED} -------- build rc ${NC}
cd build/toolchain/win/rc
git clone -q https://github.com/nico/hack
cd hack/res
../../../../../../third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ \
-std=c++14 rc.cc -Wall \
-Wno-c++11-narrowing -O2 -fno-rtti -fno-exceptions -DNDEBUG \
-o rc-linux64 -fuse-ld=lld -target x86_64-unknown-linux-gnu
cd ../../../../../../
cp build/toolchain/win/rc/hack/res/rc-linux64 build/toolchain/win/rc/linux64/rc

View File

@@ -37,6 +37,7 @@ do
-v $GHRUNNERHOME/tmp/forward-proxy:/tmp/forward-proxy:rw \ -v $GHRUNNERHOME/tmp/forward-proxy:/tmp/forward-proxy:rw \
-v $GHRUNNERHOME/redis:/redis:rw \ -v $GHRUNNERHOME/redis:/redis:rw \
-v $GHRUNNERHOME/var/run:/var/run \ -v $GHRUNNERHOME/var/run:/var/run \
-v /casefold:/win_sdk \
--network none \ --network none \
--device=/dev/kvm \ --device=/dev/kvm \
uazo/github-runner uazo/github-runner