diff --git a/Dockerfile b/Dockerfile index c3fa36f..87e57f3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -67,7 +67,20 @@ apk add --no-cache \ cd /tmp/spatialindex && \ cmake . \ -DCMAKE_INSTALL_PREFIX=/usr && \ - make && \ +# attempt to set number of cores available for make to use + set -ex && \ + CPU_CORES=$( < /proc/cpuinfo grep -c processor ) || echo "failed cpu look up" && \ + if echo $CPU_CORES | grep -E -q '^[0-9]+$'; then \ + : ;\ + if [ "$CPU_CORES" -gt 7 ]; then \ + CPU_CORES=$(( CPU_CORES - 3 )); \ + elif [ "$CPU_CORES" -gt 5 ]; then \ + CPU_CORES=$(( CPU_CORES - 2 )); \ + elif [ "$CPU_CORES" -gt 3 ]; then \ + CPU_CORES=$(( CPU_CORES - 1 )); fi \ + else CPU_CORES="1"; fi && \ + + make -j $CPU_CORES && \ make install && \ # compile minetestserver @@ -88,7 +101,8 @@ apk add --no-cache \ -DENABLE_SOUND=0 \ -DENABLE_SYSTEM_GMP=1 \ -DRUN_IN_PLACE=0 && \ - make && \ + make -j $CPU_CORES && \ + set +ex && \ make install && \ # copy games to temporary folder diff --git a/README.md b/README.md index d21f95b..4bd1645 100644 --- a/README.md +++ b/README.md @@ -76,11 +76,12 @@ You can find the world maps, mods folder and config files in /config/.minetest. ## Versions -+ **26.05.2017:** Rebase to alpine 3.6. -+ **14.02.2017:** Rebase to alpine 3.5. -+ **25.11.2016:** Rebase to alpine linux, move to main repo. -+ **27.02.2016:** Bump to latest version. -+ **19.02.2016:** Change port to UDP, thanks to slashopt for pointing this out. -+ **15.02.2016:** Make minetest app a service. -+ **01-02-2016:** Add lua-socket dependency. -+ **06.11.2015:** Initial Release. ++ **30.11.17:** Use cpu core counting routine to speed up build time. ++ **26.05.17:** Rebase to alpine 3.6. ++ **14.02.17:** Rebase to alpine 3.5. ++ **25.11.16:** Rebase to alpine linux, move to main repo. ++ **27.02.16:** Bump to latest version. ++ **19.02.16:** Change port to UDP, thanks to slashopt for pointing this out. ++ **15.02.16:** Make minetest app a service. ++ **01.02.16:** Add lua-socket dependency. ++ **06.11.15:** Initial Release.