diff --git a/CMakeLists.txt b/CMakeLists.txt index 5d97cdf1..fe0d39d6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,6 @@ cmake_minimum_required(VERSION 3.22) find_package(PkgConfig REQUIRED) +execute_process(COMMAND git submodule update --init --recursive WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" OUTPUT_STRIP_TRAILING_WHITESPACE) set(ignoreMe "${NO_PKGCFG}") set(ignoreMe "${ASAN}") set(ignoreMe "${ARCH}") diff --git a/COMPILING.md b/COMPILING.md index e7c6d21f..7b66b297 100644 --- a/COMPILING.md +++ b/COMPILING.md @@ -52,17 +52,21 @@ If you want to disable pkg-config linking you can provide the `NO_PKGCFG` flag. By default pkg-config linking is enabled. dep_root will be used when disabled. - * Example: `./build.sh -DARCH=x86_64 -DNO_PKGCFG` + * Example: `./build.sh -DARCH=x86_64 -DNO_PKGCFG=1` * or `NO_PKGCFG=1 ./build.sh -DARCH=x86_64` If you want to overwrite the compiler on mac you can provide `NO_XCODE` flag. - * Example: `CC=gcc CXX=g++ ./build.sh -DARCH=x86_64 -DNO_XCODE` + * Example: `CC=gcc CXX=g++ ./build.sh -DARCH=x86_64 -DNO_XCODE=1` * or `NO_XCODE=1 CC=gcc CXX=g++ ./build.sh -DARCH=x86_64` If you want to disable cmake reconfigure for each build, you can provide the `NO_CLEAN` flag. * Example: `NO_CLEAN=1 ./build.sh -DARCH=x86_64` * By default it will remove cmake and cache and reconfigure for each subsequent build. + If you enable the os built in AddressSanitizer feature use the `ASAN` flag. + * Example: `ASAN=1 ./build.sh -DARCH=x86_64` + * or `./build.sh -DARCH=x86_64 -DASAN=1` + The compiled binary will be located at: * `cmake-build-release/src/futurerestore` for release builds * `cmake-build-debug/src/futurerestore` for debug builds diff --git a/README.md b/README.md index 922b11d8..c32e2cd6 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # futurerestore -[![CI Building](https://img.shields.io/github/workflow/status/futurerestore/futurerestore/CI/main)](https://github.com/futurerestore/futurerestore/actions) +[![CI Building](https://img.shields.io/github/workflow/status/futurerestore/futurerestore/CI?style=for-the-badge)](https://github.com/futurerestore/futurerestore/actions) __Make sure to read this page before continuing.__ diff --git a/build.sh b/build.sh index 49af3dc8..60234580 100755 --- a/build.sh +++ b/build.sh @@ -8,7 +8,7 @@ export CXX="$(which clang++)" which xcrun >/dev/null if [[ "$?" -lt 1 ]]; then export CC="$(xcrun --find clang)"; export CXX="$(xcrun --find clang++)"; fi echo "[*] Building futurerestore" -export FR_INSTALL_DIR="/usr/local/bin" +export FR_INSTALL_DIR="/usr/local" if [[ -z "$NO_CLEAN" ]]; then rm -rf cmake-build-release cmake-build-debug; fi if [[ "$RELEASE" == "1" ]] then diff --git a/external/idevicerestore b/external/idevicerestore index 9dc32373..75092808 160000 --- a/external/idevicerestore +++ b/external/idevicerestore @@ -1 +1 @@ -Subproject commit 9dc323733e296283a58df4a27d00c4108793742d +Subproject commit 75092808043a67527ad94c263851324d456fe507 diff --git a/external/tsschecker b/external/tsschecker index a17dbfca..a600e296 160000 --- a/external/tsschecker +++ b/external/tsschecker @@ -1 +1 @@ -Subproject commit a17dbfcac2d6760b6581b1e595d051fda76a559d +Subproject commit a600e296a3f2ba764e7ab1f164d10e4e7b82e127 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b07ff9c4..925a620f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -88,5 +88,5 @@ add_definitions( -DVERSION_COMMIT_SHA="${VERSION_COMMIT_SHA}" -DVERSION_RELEASE="${VERSION_RELEASE}") install(TARGETS futurerestore - DESTINATION ${CMAKE_INSTALL_PREFIX}) + DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")