diff options
| author | Álvaro Fernández Rojas | 2025-10-19 18:14:34 +0000 |
|---|---|---|
| committer | Álvaro Fernández Rojas | 2025-10-19 18:35:00 +0000 |
| commit | 49df5f5b870445f0cc0f4f9a88e5d06de1da669d (patch) | |
| tree | 41bd1ad2f84162365c82fb5b6f13955615252d57 | |
| parent | 757c1c704c9d07bf49e528d1ee0cd2b1423d4059 (diff) | |
| download | omcproxy-49df5f5b870445f0cc0f4f9a88e5d06de1da669d.tar.gz | |
omcproxy: add a simple build script
Should make it a little bit easier for people who want to contribute.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
| -rw-r--r-- | .gitignore | 1 | ||||
| -rwxr-xr-x | scripts/devel-build.sh | 64 |
2 files changed, 65 insertions, 0 deletions
@@ -1,5 +1,6 @@ .project .cproject +build CMakeCache.txt CMakeFiles CMakeScripts diff --git a/scripts/devel-build.sh b/scripts/devel-build.sh new file mode 100755 index 0000000..ae9ade6 --- /dev/null +++ b/scripts/devel-build.sh @@ -0,0 +1,64 @@ +#!/bin/bash + +set -euxo pipefail +cd "${0%/*}" +cd .. + +# Sanity checks +if [ ! -e "CMakeLists.txt" ] || [ ! -e "src/omcproxy.c" ]; then + echo "omcproxy checkout not found" >&2 + exit 1 +fi + +BUILD_ARGS="$@" + +# Create build dirs +OMCPROXYDIR="$(pwd)" +BUILDDIR="${OMCPROXYDIR}/build" +DEPSDIR="${BUILDDIR}/depends" +[ -e "${BUILDDIR}" ] || mkdir "${BUILDDIR}" +[ -e "${DEPSDIR}" ] || mkdir "${DEPSDIR}" + +# Download deps +cd "${DEPSDIR}" +[ -e "json-c" ] || git clone https://github.com/json-c/json-c.git +[ -e "libubox" ] || git clone https://github.com/openwrt/libubox.git + +# Build json-c +cd "${DEPSDIR}/json-c" +cmake \ + -S . \ + -B . \ + -DCMAKE_PREFIX_PATH="${BUILDDIR}" \ + -DBUILD_SHARED_LIBS=OFF \ + -DDISABLE_EXTRA_LIBS=ON \ + --install-prefix "${BUILDDIR}" +make +make install + +# Build libubox +cd "${DEPSDIR}/libubox" +cmake \ + -S . \ + -B . \ + -DCMAKE_PREFIX_PATH="${BUILDDIR}" \ + -DBUILD_LUA=OFF \ + -DBUILD_EXAMPLES=OFF \ + --install-prefix "${BUILDDIR}" +make +make install + +# Build omcproxy +cd "${OMCPROXYDIR}" +cmake \ + -S . \ + -B "${BUILDDIR}" \ + -DCMAKE_PREFIX_PATH="${BUILDDIR}" \ + ${BUILD_ARGS} +make -C "${BUILDDIR}" + +set +x +echo "✅ Success - the omcproxy binary is available at ${BUILDDIR}/omcproxy" +echo "👷 You can rebuild omcproxy by running 'make -C build'" + +exit 0 |