Commit Graph

591 Commits

Author SHA1 Message Date
Alexey Milovidov
0f66d161d6 Merge branch 'master' of github.com:ClickHouse/ClickHouse into no-export-dynamic 2023-07-23 21:33:51 +02:00
Alexey Milovidov
43cf31a98e
Merge branch 'master' into no-export-dynamic 2023-07-23 07:26:33 +03:00
Azat Khuzhin
0b258dda4e Reproducible builds for Rust
From now on cargo will not download anything from the internet during
builds. This step had been moved for docker image builds (via cargo
vendor).

And now cargo inside docker.io/clickhouse/binary-builder will not use
any crates from the internet, so we don't need to add --offline for
cargo commands in cmake (corrosion_import_crate()).

Also the docker build command had been adjusted to allow following
symlinks inside build context, by using tar, this is required for Rust
packages.

Note, that to make proper Cargo.lock that could be vendored I did the
following:
- per-project locks had been removed (since there is no automatic way to
  sync the workspace Cargo.lock with per-project Cargo.lock, since cargo
  update/generate-lockfile will use only per-project Cargo.toml files
  apparently, -Z minimal-versions does not helps either)
- and to generate Cargo.lock with less changes I've pinned version in
  the Cargo.toml strictly, i.e. not 'foo = "0.1"' but 'foo = "=0.1"'
  then the Cargo.lock for workspace had been generated and afterwards
  I've reverted this part.

Plus I have to update the dependencies afterwards, since otherwise there
are conflicts with dependencies for std library. Non trivial.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-22 22:46:22 +02:00
Antonio Andelic
3c2507ad7d
Merge branch 'master' into fix-packager 2023-07-18 09:18:03 +02:00
Mikhail f. Shiryaev
0ba38b4dde
Merge branch 'master' into sources-with-subs 2023-07-17 14:04:02 +02:00
Alexey Milovidov
f8eaa3e8e6
Merge pull request #51903 from azat/build/pin-rust
Pin rust nightly (to make it stable)
2023-07-07 20:28:57 +03:00
Azat Khuzhin
ec5e26a017 Pin rust nightly (to make it stable)
Because of using Rust nightly, and without #49601 the Rust toolchain is
very unstable, and can be frequently failed.

So let's ping particular version.

Also I've looked and it seems that Rust archives stores this archive
without any TTL, since there is even a version for 2015 year.

Follow-up for: #50541
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-06 21:17:50 +02:00
Alexey Milovidov
1eaa2e9d30
Merge branch 'master' into no-export-dynamic 2023-07-04 22:37:46 +03:00
Alexey Milovidov
1eafba60d2 Merge branch 'master' into riscv-in-ci 2023-07-04 21:28:05 +02:00
Antonio Andelic
3277e4b5bd Fix build type in packager 2023-07-04 11:22:19 +00:00
Alexey Milovidov
463c2ba5ce
Revert "Add documentation for building in docker" 2023-07-04 14:07:10 +03:00
Mikhail f. Shiryaev
c715ee5cef
Replace --build-type=debug by --debug-build 2023-07-03 19:58:47 +02:00
Mikhail f. Shiryaev
469da1831a
Replace --build-type=debug by --debug-build 2023-07-03 17:42:15 +02:00
Mikhail f. Shiryaev
6d2b5166b9
Update golang version in builder 2023-06-28 10:32:20 +02:00
Ilya Yatsishin
a9cb4d1b3d Better tar 2023-06-27 12:32:32 +02:00
Ilya Yatsishin
ed6bfd66fe Publish changes 2023-06-26 17:28:59 +02:00
Alexey Milovidov
fef63351bb
Merge branch 'master' into no-export-dynamic 2023-06-11 19:56:00 +03:00
Alexey Milovidov
5d26b0cf7c
Merge pull request #50550 from cmsxbc/misc-darwin-build
skip extracting darwin toolchain in builder when unncessary
2023-06-05 11:11:34 +03:00
Alexey Milovidov
47379ac039
Update build.sh 2023-06-05 03:58:42 +03:00
Azat Khuzhin
bf127f4e1e MSan support for Rust
Previously you have to unpoison memory from the Rust, however Rust does
supports MSan, so let's simply use it.

But for this we need nightly Rust and recompile standard library.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-06-04 23:04:55 +02:00
cmsxbc
4bb44c7c72
1. skip extract darwin toolchain in builder when uncessary
2. update MacOSX SDK version in toolchain readme to match in builder
2023-06-04 23:06:21 +08:00
Azat Khuzhin
c37fe64040 Merge remote-tracking branch 'u/master' into build/llvm-16 2023-05-08 22:33:52 +02:00
Alexey Milovidov
8cd9fc4a2d Fix build 2023-05-06 23:52:16 +02:00
Mikhail f. Shiryaev
7ff582b963
Deprecate ENABLE_CCACHE and replace it by COMPILER_CACHE 2023-03-29 23:33:31 +02:00
Mikhail f. Shiryaev
def5ae851e
Use CTCACHE_DIR only with ccache 2023-03-29 23:33:29 +02:00
Mikhail f. Shiryaev
f1b1f30764
Make --ccache-dir equal to --ccache_dir 2023-03-29 23:33:27 +02:00
Mikhail f. Shiryaev
fcc14ae724
Enable s3 caching 2023-03-29 23:33:27 +02:00
Mikhail f. Shiryaev
6d8da8f88b
Add sccache and ctcache S3 parameters, don't use 2023-03-29 23:33:27 +02:00
Mikhail f. Shiryaev
df17a35410
Get rid of useless cache_maxsize parameter 2023-03-29 23:33:26 +02:00
Mikhail f. Shiryaev
2d872ff23b
Add a function to parse arguments 2023-03-29 23:33:26 +02:00
Mikhail f. Shiryaev
419f234294
Fix logic for --force-build-image 2023-03-29 23:33:25 +02:00
Mikhail f. Shiryaev
3b1291eb0e
Replace distcc with sccache in packager 2023-03-29 23:33:25 +02:00
Mikhail f. Shiryaev
612d1d8876
Install sccache in binary-builder and fasttests 2023-03-29 23:33:24 +02:00
Mikhail f. Shiryaev
c994c41e74
Fix logging formatting 2023-03-29 23:33:23 +02:00
Mikhail f. Shiryaev
648697f085
Add main function, use specific exception in packager 2023-03-29 23:33:23 +02:00
Mikhail f. Shiryaev
cd5852f11a
Add typing and rewrite packager to pathlib.Path 2023-03-29 23:33:21 +02:00
Alexey Milovidov
89a76c2d77 Use LLVM 16 2023-03-18 23:45:57 +01:00
Alexey Milovidov
d0d6306102 Fix coverity 2023-02-21 00:46:27 +01:00
Mikhail f. Shiryaev
08ffb8f93d
Install only "programs" directory during build 2023-02-15 11:49:19 +01:00
Mikhail f. Shiryaev
6a968bad8e
Reduce building and compiling deb packages with ninja *install 2023-02-14 14:57:00 +01:00
Mikhail f. Shiryaev
4d8ff0c0fb
Update the golang version to 1.19.5 2023-02-13 13:19:45 +01:00
Mikhail f. Shiryaev
ebb41504c0
Move copy to the end for parallel image building 2023-02-12 14:55:16 +01:00
Mikhail f. Shiryaev
376b5d178f
Experiment with multiple build stages 2023-02-09 19:13:44 +01:00
Mikhail f. Shiryaev
1ef1eefa26
Format the RUN, update clang-tidy-cache 2023-02-09 19:10:48 +01:00
Mikhail f. Shiryaev
5bc3e703ef
Move the heaviest operation to the top 2023-02-09 19:10:06 +01:00
MeenaRenganathan22
4a0202a074 Committing the docker with the changes to install the ysam 2023-01-24 20:41:43 -05:00
Alexey Milovidov
e9f11a3e61 Fix Docker 2023-01-08 22:45:30 +01:00
Alexey Milovidov
4694dad87c Break CI 2023-01-08 07:59:31 +01:00
Robert Schulze
cfb6feffde
What happens if I remove these 139 lines of code? 2023-01-03 18:35:31 +00:00
Alexey Milovidov
d07f0c9e3f Fix GitHub 2023-01-02 23:44:42 +01:00
Alexey Milovidov
ca117d5b94
Merge branch 'master' into remove-two-lines-of-code 2023-01-02 22:15:36 +03:00
Azat Khuzhin
d9fb47458f Exclude cargo shared libraries from the artifacts
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-01-02 12:36:14 +01:00
Alexey Milovidov
47ae8c5c79 Remove more lines 2023-01-02 02:06:11 +01:00
Alexey Milovidov
f7f5aaf35d What if I will remove two lines of code? 2023-01-02 01:20:34 +01:00
Robert Schulze
2b9a0824fe
Cosmetics: Rename "amd64-sse2" builds to "amd64-compat" builds
... a bit of consistency with "aarch64-v80compat"
2022-12-19 19:00:21 +00:00
Azat Khuzhin
28737a503c Configure rustc compiler properly
Right now it works for host platforms because of gcc package, that
includes gcc-cross sysroot.

Use bundled sysroot from contrib instead.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-12-14 20:57:29 +01:00
Azat Khuzhin
67fa185611
Revert "Builtin skim" 2022-12-14 17:17:19 +03:00
Azat Khuzhin
8570f15688 Configure rustc compiler properly
Right now it works for host platforms because of gcc package, that
includes gcc-cross sysroot.

Use bundled sysroot from contrib instead.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-12-11 15:52:00 +01:00
Mikhail f. Shiryaev
a68dc6280d
Optimize binary-builder size 2022-11-25 12:17:51 +01:00
Mikhail f. Shiryaev
150ceb7d37
Use matus-chochlik/ctcache for clang-tidy 2022-11-03 11:53:11 +01:00
Azat Khuzhin
043c4163f4 Use nfpm packager for archlinux packages
Since nfpm v2.20.0 it can build packages for archlinux [1].

  [1]: https://github.com/goreleaser/nfpm/pull/543

Something like this:

    $ mkdir -p /src/packages/root
    $ cmake -DCMAKE_INSTALL_PREFIX=/usr /src
    $ DESTDIR=/src/packages/root ninja install
    $ cd /src/packages
    $ ./build --archlinux

    $ root@s3:/src/packages# ./build --archlinux
    Current version is 22.10.1.1
    Building archlinux package for clickhouse-client.yaml
    using archlinux packager...
    created package: /src/clickhouse-client-22.10.1.1-1-x86_64.pkg.tar.zst
    ...

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-10-18 18:33:48 +03:00
Azat Khuzhin
fb6474c35b Add a comment about MAKE_* env vars
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-10-18 18:33:48 +03:00
BoloniniD
3a3ca51980 Fixes after review 2022-10-02 20:52:05 +03:00
BoloniniD
55c79230b3 Merge branch 'master' of github.com:ClickHouse/ClickHouse into BLAKE3 2022-09-29 23:53:25 +03:00
Robert Schulze
bcaa66c804
Add arm-v80compat builds 2022-09-21 13:09:24 +00:00
BoloniniD
4f2915c8f7 Fix aarch64-darwin build 2022-09-19 21:52:57 +03:00
Mikhail f. Shiryaev
5d8b8a7db6
Add deb Source for packages 2022-09-19 20:42:02 +02:00
BoloniniD
2f771daa8c Fix Rust installation for Corrosion 2022-09-18 15:22:16 +03:00
BoloniniD
627dea333e Merge branch 'master' into BLAKE3 2022-09-17 22:14:30 +03:00
BoloniniD
452ef4435b Merge branch 'master' of github.com:ClickHouse/ClickHouse into BLAKE3 2022-09-16 20:05:56 +03:00
BoloniniD
0df426d329 Corrosion fixes + review fixes 2022-09-16 00:05:21 +03:00
BoloniniD
fe239e7ee9 Fix style + free err_msg before throwing exception 2022-09-12 18:46:54 +03:00
Azat Khuzhin
ced30a2072 Switch to llvm/clang 15
It had been released few hours ago, and I want to check how clang-15
generates DWARF-5

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-09-10 21:38:34 +02:00
BoloniniD
e8bcbcd016
Merge branch 'master' into BLAKE3 2022-09-09 11:48:31 +03:00
Robert Schulze
652f1bfd19
fix: pass -DNO_SSE3_OR_HIGHER=1 from packager 2022-09-06 12:18:11 +00:00
Robert Schulze
1ebcc3a14e
fix: endswidth --> endswith 2022-09-06 07:41:37 +00:00
Robert Schulze
438ed368a1
fix: correct compiler parsing 2022-09-05 17:49:40 +00:00
Robert Schulze
401747eaa7
Merge branch 'master' into sse2-special-build 2022-09-05 16:17:20 +02:00
Robert Schulze
e1def723f8
Add special x86-SSE2-only build 2022-09-05 12:51:44 +00:00
Azat Khuzhin
64f95710cd ci: add symlink for llvm-symbolizer (to make symbolizer work)
Simply installing llvm-symbolizer-$VER is not enough, since it does not
contain proper symblink, while LLVM is looking only for
"llvm-symbolizer" (without version) - [1]:

  [1]:
c444af1c20/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp (L454)

Follow-up for: #40655
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-09-04 14:03:34 +02:00
Azat Khuzhin
ce88c7cb60 Add llvm-15 for llvm-symbolizer-15 for clang-15 (used for TSan)
Simply installing llvm-15 over TSAN_SYMBOLIZER_PATH had been prefered
(to keep everything in one place and as simple as possible), though
TSAN_SYMBOLIZER_PATH should also work.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-08-26 09:28:42 +02:00
Alexey Milovidov
cb2e5f316c Revert "Maybe make it possible"
This reverts commit a517d9d65f.
2022-08-21 20:52:04 +02:00
Alexey Milovidov
dd9085346a Revert "Fix error"
This reverts commit e702adf0c9.
2022-08-21 20:52:03 +02:00
Alexey Milovidov
c08766aa34 Revert "Do not put garbage in the Docker image"
This reverts commit 2b82916175.
2022-08-21 20:51:59 +02:00
Alexey Milovidov
2b82916175 Do not put garbage in the Docker image 2022-08-17 09:13:04 +02:00
Alexey Milovidov
e702adf0c9 Fix error 2022-08-15 06:23:00 +02:00
Alexey Milovidov
a517d9d65f Maybe make it possible 2022-08-15 04:23:56 +02:00
Alexey Milovidov
1021b756ac Fix conflict 2022-08-14 06:12:38 +02:00
Alexey Milovidov
5ebba1af33 Merge branch 'riscv64-linker' into riscv-in-ci 2022-08-14 06:10:22 +02:00
Alexey Milovidov
2de309c34f Add Linux RISC-V 64 build to CI 2022-08-14 06:07:31 +02:00
Alexey Milovidov
5ce6c07005 Set linker for RISC-V 64 2022-08-14 05:57:55 +02:00
Yakov Olkhovskiy
78cc2a970d
copy self-extracting to output 2022-08-09 02:40:17 -04:00
Alexander Tokmakov
3bc583c22b
Revert "copy self-extracting to output" 2022-08-08 20:13:40 +03:00
BoloniniD
24f3b00193
Merge branch 'master' into BLAKE3 2022-08-06 19:48:10 +03:00
Yakov Olkhovskiy
4c78f0fc7d
Merge branch 'master' into ci-self-extracting-s3-deployment 2022-08-05 08:14:48 -04:00
BoloniniD
48c91619b0
Merge branch 'master' into BLAKE3 2022-08-04 20:30:47 +03:00
Ilya Yatsishin
cecdc313d8
Merge branch 'master' into integration-tests-7 2022-08-04 11:37:16 +02:00
Alexey Milovidov
f474eb957d
Merge pull request #39758 from ClickHouse/tsan_clang_15
Try clang-15 for build with tsan
2022-08-04 01:56:52 +03:00
Mikhail f. Shiryaev
8533769132
Use compression and cleanup with the recent version ccache 2022-08-03 14:49:07 +02:00
Mikhail f. Shiryaev
eeaf08525f
Use test-util as source for base-test, fasttest and package builder 2022-08-03 14:49:06 +02:00