mirror of
https://github.com/void-linux/void-packages.git
synced 2025-08-01 02:12:55 +02:00
New package: bazel-8.2.1
This commit is contained in:
parent
a2a22c7820
commit
ede7476726
5 changed files with 218 additions and 0 deletions
29
srcpkgs/bazel/patches/gettid.patch
Normal file
29
srcpkgs/bazel/patches/gettid.patch
Normal file
|
@ -0,0 +1,29 @@
|
|||
--- a/src/main/java/net/starlark/java/eval/cpu_profiler_posix.cc
|
||||
+++ b/src/main/java/net/starlark/java/eval/cpu_profiler_posix.cc
|
||||
@@ -41,7 +41,7 @@ Java_net_starlark_java_eval_CpuProfiler_
|
||||
|
||||
static int fd; // the write end of the profile event pipe
|
||||
|
||||
-pid_t gettid(void) {
|
||||
+pid_t sys_gettid(void) {
|
||||
#ifdef __linux__
|
||||
return (pid_t)syscall(SYS_gettid);
|
||||
#else // darwin
|
||||
@@ -63,7 +63,7 @@ void onsigprof(int sig) {
|
||||
}
|
||||
|
||||
// Send an event containing the int32be-encoded OS thread ID.
|
||||
- pid_t tid = gettid();
|
||||
+ pid_t tid = sys_gettid();
|
||||
uint32_t tid_be = htonl(tid);
|
||||
int r = write(fd, (void *)&tid_be, sizeof tid_be);
|
||||
if (r < 0) {
|
||||
@@ -100,7 +100,7 @@ void onsigprof(int sig) {
|
||||
// static native jint gettid();
|
||||
extern "C" JNIEXPORT jint JNICALL
|
||||
Java_net_starlark_java_eval_CpuProfiler_gettid(JNIEnv *env, jclass clazz) {
|
||||
- return gettid();
|
||||
+ return sys_gettid();
|
||||
}
|
||||
|
||||
// makeFD: return new FileDescriptor(fd)
|
12
srcpkgs/bazel/patches/java.patch
Normal file
12
srcpkgs/bazel/patches/java.patch
Normal file
|
@ -0,0 +1,12 @@
|
|||
--- a/scripts/packages/bazel.sh
|
||||
+++ b/scripts/packages/bazel.sh
|
||||
@@ -104,7 +104,8 @@ function get_workspace_root() {
|
||||
|
||||
get_workspace_root
|
||||
|
||||
-readonly wrapper_dir="$(dirname "$(get_realpath "${BASH_SOURCE[0]}")")"
|
||||
+export JAVA_HOME=/usr/lib/jvm/openjdk21
|
||||
+readonly wrapper_dir="/usr/libexec/bazel"
|
||||
readonly os_arch_suffix="$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)"
|
||||
|
||||
function get_bazel_version() {
|
48
srcpkgs/bazel/patches/musl.patch
Normal file
48
srcpkgs/bazel/patches/musl.patch
Normal file
|
@ -0,0 +1,48 @@
|
|||
--- a/src/main/native/unix_jni.h
|
||||
+++ b/src/main/native/unix_jni.h
|
||||
@@ -26,7 +26,8 @@
|
||||
|
||||
namespace blaze_jni {
|
||||
|
||||
-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || \
|
||||
+ (defined(__linux__) && !defined(__GLIBC__))
|
||||
// stat64 is deprecated on OS X/BSD.
|
||||
typedef struct stat portable_stat_struct;
|
||||
#define portable_stat ::stat
|
||||
--- a/src/main/native/unix_jni_linux.cc
|
||||
+++ b/src/main/native/unix_jni_linux.cc
|
||||
@@ -12,6 +12,7 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
+#include <features.h>
|
||||
#include <errno.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
@@ -45,7 +46,11 @@ std::string ErrorMessage(int error_numbe
|
||||
|
||||
int portable_fstatat(
|
||||
int dirfd, char *name, portable_stat_struct *statbuf, int flags) {
|
||||
+#ifdef __GLIBC__
|
||||
return fstatat64(dirfd, name, statbuf, flags);
|
||||
+#else
|
||||
+ return fstatat(dirfd, name, statbuf, flags);
|
||||
+#endif
|
||||
}
|
||||
|
||||
uint64_t StatEpochMilliseconds(const portable_stat_struct &statbuf,
|
||||
--- a/src/tools/singlejar/port.h
|
||||
+++ b/src/tools/singlejar/port.h
|
||||
@@ -34,6 +34,11 @@ typedef off_t off64_t;
|
||||
typedef __int64 off64_t;
|
||||
#elif defined(__OpenBSD__)
|
||||
typedef int64_t off64_t;
|
||||
+#elif defined(__linux__)
|
||||
+#include <features.h>
|
||||
+#ifndef __GLIBC__
|
||||
+typedef off_t off64_t;
|
||||
+#endif
|
||||
#endif
|
||||
static_assert(sizeof(off64_t) == 8, "File offset type must be 64-bit");
|
||||
|
57
srcpkgs/bazel/patches/no-jdk.patch
Normal file
57
srcpkgs/bazel/patches/no-jdk.patch
Normal file
|
@ -0,0 +1,57 @@
|
|||
--- a/.bazelrc
|
||||
+++ b/.bazelrc
|
||||
@@ -94,3 +94,5 @@ test:ci-windows --test_env=JAVA_HOME
|
||||
test:ci-windows --test_env=TEST_INSTALL_BASE=C:/b/bazeltest_install_base
|
||||
test:ci-windows --test_env=REPOSITORY_CACHE=C:/b/bazeltest_repo_cache
|
||||
test:ci-windows --test_tag_filters=-no_windows,-slow
|
||||
+
|
||||
+common --extra_toolchains=//xbps_src:non_prebuilt_java_21_toolchain_definition
|
||||
--- a/scripts/BUILD
|
||||
+++ b/scripts/BUILD
|
||||
@@ -12,7 +12,7 @@ genrule(
|
||||
outs = ["bazel-complete.bash"],
|
||||
cmd = " ".join([
|
||||
"$(location :generate_bash_completion.sh)",
|
||||
- "--bazel=$(location //src:bazel)",
|
||||
+ "--bazel=$(location //src:bazel_nojdk)",
|
||||
"--output=$@",
|
||||
"--prepend=$(location bazel-complete-header.bash)",
|
||||
"--prepend=$(location bazel-complete-template.bash)",
|
||||
@@ -20,7 +20,7 @@ genrule(
|
||||
output_to_bindir = 1,
|
||||
tools = [
|
||||
":generate_bash_completion.sh",
|
||||
- "//src:bazel",
|
||||
+ "//src:bazel_nojdk",
|
||||
],
|
||||
visibility = [
|
||||
"//scripts/packages:__subpackages__",
|
||||
@@ -105,12 +105,12 @@ genrule(
|
||||
outs = ["bazel.fish"],
|
||||
cmd = " ".join([
|
||||
"$(location :generate_fish_completion)",
|
||||
- "--bazel=$(location //src:bazel)",
|
||||
+ "--bazel=$(location //src:bazel_nojdk)",
|
||||
"--output=$@",
|
||||
]),
|
||||
tools = [
|
||||
":generate_fish_completion",
|
||||
- "//src:bazel",
|
||||
+ "//src:bazel_nojdk",
|
||||
],
|
||||
visibility = ["//scripts/packages:__subpackages__"],
|
||||
)
|
||||
--- /dev/null
|
||||
+++ b/xbps_src/BUILD.bazel
|
||||
@@ -0,0 +1,11 @@
|
||||
+load("@rules_java//toolchains:default_java_toolchain.bzl", "default_java_toolchain")
|
||||
+
|
||||
+default_java_toolchain(
|
||||
+ name = "non_prebuilt_java_21_toolchain",
|
||||
+ header_compiler_direct = "@remote_java_tools//:TurbineDirect",
|
||||
+ ijar = "//third_party/ijar:ijar",
|
||||
+ java_runtime = "@local_jdk//:jdk",
|
||||
+ singlejar = "//src/tools/singlejar:singlejar",
|
||||
+ source_version = "21",
|
||||
+ target_version = "21",
|
||||
+)
|
72
srcpkgs/bazel/template
Normal file
72
srcpkgs/bazel/template
Normal file
|
@ -0,0 +1,72 @@
|
|||
# Template file for 'bazel'
|
||||
pkgname=bazel
|
||||
version=8.2.1
|
||||
revision=1
|
||||
hostmakedepends="protobuf python3 unzip openjdk21 which perl grpc zip tar"
|
||||
makedepends="protobuf-devel libprotoc-devel grpc-devel libarchive-devel
|
||||
zlib-devel"
|
||||
depends="openjdk21"
|
||||
short_desc="Google's build system"
|
||||
maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
|
||||
license="Apache-2.0"
|
||||
homepage="https://bazel.build/"
|
||||
distfiles="https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip"
|
||||
checksum="b12b95cc02cc5ee19ff7a6a7f71f9496631f937c8e13a8f53ee0ff7b7700bc16"
|
||||
nostrip=yes
|
||||
python_version=3
|
||||
|
||||
nocross=yes
|
||||
|
||||
case "$XBPS_TARGET_MACHINE" in
|
||||
aarch64*) _cpu=aarch64 ;;
|
||||
armv7*) _cpu=armv7 ;;
|
||||
arm*) _cpu=arm ;;
|
||||
x86_64*) _cpu=x86_64 ;;
|
||||
i686*) _cpu=i386 ;;
|
||||
ppc64le*) _cpu=ppc64le ;;
|
||||
ppc64*) _cpu=ppc ;;
|
||||
ppc*) _cpu=ppc32 ;;
|
||||
riscv64*) _cpu=riscv64 ;;
|
||||
*) broken="not supported" ;;
|
||||
esac
|
||||
|
||||
do_build() {
|
||||
local flag
|
||||
local _bazel_opts="-s --verbose_failures"
|
||||
for flag in $CFLAGS; do
|
||||
_bazel_opts+=" --conlyopt=$flag"
|
||||
# For -fstack-protector ...
|
||||
_bazel_opts+=" --linkopt=$flag"
|
||||
done
|
||||
for flag in $CXXFLAGS; do
|
||||
_bazel_opts+=" --cxxopt=$flag"
|
||||
_bazel_opts+=" --linkopt=$flag"
|
||||
done
|
||||
for flag in $LDFLAGS; do
|
||||
_bazel_opts+=" --linkopt=$flag"
|
||||
done
|
||||
|
||||
_bazel_opts+=" --java_runtime_version=local_jdk"
|
||||
_bazel_opts+=" --tool_java_runtime_version=local_jdk"
|
||||
|
||||
export JAVA_HOME="/usr/lib/jvm/openjdk21"
|
||||
|
||||
EMBED_LABEL=${version} \
|
||||
EXTRA_BAZEL_ARGS="$_bazel_opts" \
|
||||
./compile.sh
|
||||
./output/bazel build //scripts:bash_completion
|
||||
./output/bazel build //scripts:fish_completion
|
||||
./output/bazel shutdown
|
||||
|
||||
cp bazel-bin/scripts/bazel-complete.bash output/
|
||||
cp bazel-bin/scripts/bazel.fish output/
|
||||
cp scripts/zsh_completion/_bazel output/
|
||||
chmod -R u+rwX /tmp
|
||||
}
|
||||
|
||||
do_install() {
|
||||
vbin output/bazel
|
||||
vcompletion output/bazel-complete.bash bash
|
||||
vcompletion output/bazel.fish fish
|
||||
vcompletion output/_bazel zsh
|
||||
}
|
Loading…
Add table
Reference in a new issue