svf-tools 1.0.1053 → 1.0.1055

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/Dockerfile +2 -9
  2. package/build.sh +10 -13
  3. package/package.json +1 -1
package/Dockerfile CHANGED
@@ -24,15 +24,8 @@ RUN apt-get install -y $build_deps $lib_deps
24
24
  RUN add-apt-repository ppa:deadsnakes/ppa
25
25
  RUN apt-get update
26
26
  RUN set -ex; \
27
- if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
28
- apt-get update && apt-get install -y python3.10-dev \
29
- && update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1; \
30
- elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then \
31
- apt-get update && apt-get install -y python3.8-dev \
32
- && update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1; \
33
- else \
34
- echo "Unsupported platform: $TARGETPLATFORM" && exit 1; \
35
- fi
27
+ apt-get update && apt-get install -y python3.10-dev \
28
+ && update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1;
36
29
 
37
30
  # Fetch and build SVF source.
38
31
  RUN echo "Downloading LLVM and building SVF to " ${HOME}
package/build.sh CHANGED
@@ -25,8 +25,9 @@ sysOS=$(uname -s)
25
25
  arch=$(uname -m)
26
26
  MajorLLVMVer=16
27
27
  LLVMVer=${MajorLLVMVer}.0.4
28
+ UbuntuArmLLVM_RTTI="https://github.com/SVF-tools/SVF/releases/download/SVF-3.0/llvm-${MajorLLVMVer}.0.0-ubuntu24-rtti-aarch64.tar.gz"
28
29
  UbuntuArmLLVM="https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVMVer}/clang+llvm-${LLVMVer}-aarch64-linux-gnu.tar.xz"
29
- UbuntuLLVM_RTTI="https://github.com/SVF-tools/SVF/releases/download/SVF-3.0/llvm-${MajorLLVMVer}.0.0-ubuntu24-rtti-amd64.tar.gz"
30
+ UbuntuLLVM_RTTI="https://github.com/SVF-tools/SVF/releases/download/SVF-3.0/llvm-${MajorLLVMVer}.0.0-ubuntu24-rtti-x86-64.tar.gz"
30
31
  UbuntuLLVM="https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVMVer}/clang+llvm-${LLVMVer}-x86_64-linux-gnu-ubuntu-22.04.tar.xz"
31
32
  SourceLLVM="https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-${LLVMVer}.zip"
32
33
  UbuntuZ3="https://github.com/Z3Prover/z3/releases/download/z3-4.8.8/z3-4.8.8-x64-ubuntu-16.04.zip"
@@ -58,7 +59,7 @@ for arg in "$@"; do
58
59
  fi
59
60
  done
60
61
  # if static is off (shared lib), rtti is always on, but print a warning if rtti is off
61
- if [[ "$BUILD_SHARED" == "ON" && "$RTTI" == "OFF" ]]; then
62
+ if [[ "$BUILD_DYN_LIB" == "ON" && "$RTTI" == "OFF" ]]; then
62
63
  echo "Warning: LLVM RTTI is always on when building shared libraries."
63
64
  RTTI='ON'
64
65
  fi
@@ -179,7 +180,6 @@ function check_and_install_brew {
179
180
  # OS-specific values.
180
181
  urlLLVM=""
181
182
  urlZ3=""
182
- OSDisplayName=""
183
183
 
184
184
  ########
185
185
  # Set OS-specific values, mainly URLs to download binaries from.
@@ -187,18 +187,16 @@ OSDisplayName=""
187
187
  #######
188
188
  if [[ $sysOS == "Darwin" ]]; then
189
189
  check_and_install_brew
190
- if [[ "$arch" == "arm64" ]]; then
191
- OSDisplayName="macOS arm64"
192
- else
193
- OSDisplayName="macOS x86"
194
- fi
195
190
  elif [[ $sysOS == "Linux" ]]; then
196
191
  if [[ "$arch" == "aarch64" ]]; then
192
+ if [[ "$BUILD_DYN_LIB" == "ON" ]]; then
193
+ urlLLVM="$UbuntuArmLLVM_RTTI"
194
+ else
197
195
  urlLLVM="$UbuntuArmLLVM"
198
- urlZ3="$UbuntuZ3Arm"
199
- OSDisplayName="Ubuntu arm64"
196
+ fi
197
+ urlZ3="$UbuntuZ3Arm"
200
198
  else
201
- if [[ "$BUILD_SHARED" == "ON" ]]; then
199
+ if [[ "$BUILD_DYN_LIB" == "ON" ]]; then
202
200
  urlLLVM="$UbuntuLLVM_RTTI"
203
201
  else
204
202
  # if RTTI is on
@@ -208,8 +206,7 @@ elif [[ $sysOS == "Linux" ]]; then
208
206
  urlLLVM="$UbuntuLLVM"
209
207
  fi
210
208
  fi
211
- urlZ3="$UbuntuZ3"
212
- OSDisplayName="Ubuntu x86"
209
+ urlZ3="$UbuntuZ3"
213
210
  fi
214
211
  else
215
212
  echo "Builds outside Ubuntu and macOS are not supported."
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.1053",
3
+ "version": "1.0.1055",
4
4
  "description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
5
5
  "main": "index.js",
6
6
  "scripts": {