-
Notifications
You must be signed in to change notification settings - Fork 252
feat: add support to x64 systems using musl #632
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 14 commits
fab9375
70e710c
0dc3e64
38a20ff
71b21bb
b8f2bea
10001cb
23d729a
46a2b5c
a52520a
4f963ca
61ad7a7
05b4000
8bd9b37
29f87f8
c3723e5
4e0df47
dc0cf13
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -111,6 +111,7 @@ OsgiKeys.additionalHeaders := Map( | |
| "org/xerial/snappy/native/Linux/ppc64/libsnappyjava.so;osname=linux;processor=ppc64le", | ||
| "org/xerial/snappy/native/Linux/s390x/libsnappyjava.so;osname=linux;processor=s390x", | ||
| "org/xerial/snappy/native/Linux/loongarch64/libsnappyjava.so;osname=linux;processor=loongarch64", | ||
| "org/xerial/snappy/native/Linux/x86_64-musl/libsnappyjava.so;osname=Linux;processor=x86-64-musl", | ||
|
||
| "org/xerial/snappy/native/AIX/ppc/libsnappyjava.a;osname=aix;processor=ppc", | ||
| "org/xerial/snappy/native/AIX/ppc64/libsnappyjava.a;osname=aix;processor=ppc64", | ||
| "org/xerial/snappy/native/SunOS/x86/libsnappyjava.so;osname=sunos;processor=x86", | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| FROM alpine:3.18 | ||
|
|
||
| # Set workspace directory | ||
| WORKDIR /work | ||
|
|
||
| # Copy the project to the container | ||
| COPY . . | ||
|
|
||
| # Install build dependencies | ||
| RUN apk add --no-cache \ | ||
| openjdk8 \ | ||
| cmake \ | ||
| make \ | ||
| gcc \ | ||
| g++ \ | ||
| musl-dev \ | ||
| linux-headers \ | ||
| git \ | ||
| util-linux \ | ||
| bash \ | ||
| curl | ||
|
|
||
| # Install SBT | ||
| RUN curl -L "https://github.com/sbt/sbt/releases/download/v1.9.7/sbt-1.9.7.tgz" | tar xz -C /usr/local | ||
| ENV PATH="/usr/local/sbt/bin:${PATH}" | ||
|
|
||
| # Install python/pip | ||
| ENV PYTHONUNBUFFERED=1 | ||
| RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python | ||
| RUN python3 -m ensurepip | ||
| RUN pip3 install --no-cache --upgrade pip setuptools | ||
|
|
||
| # Set Env Vars | ||
| ENV CC=gcc CXX=g++ | ||
| ENV JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk | ||
| ENV PATH="${JAVA_HOME}/bin:${PATH}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The build configuration for
Linux-x86_64-muslis very similar to the existingLinux-x86_64configuration. This duplication can make future maintenance more difficult, as changes would need to be applied in two places. Consider refactoring the common settings into a reusable block to reduce redundancy.