Upgrade Emscripten + build fixes
- Upgraded to 3.1.47. - EM_CACHE override leads to some new issues with package search in sysroot, probably because sysroot is hardcoded in PKG_CONFIG* variables. Use Docker's path mapping mechanism instead. - Added temporary workaround for new issue from https://github.com/emscripten-core/emscripten/issues/16836.
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
FROM emscripten/emsdk:3.1.3
|
||||
RUN apt-get update && apt-get install -qqy autoconf autopoint pkg-config
|
||||
FROM emscripten/emsdk:3.1.47
|
||||
RUN apt-get update && apt-get install -qqy autoconf autopoint pkg-config libtool libtool-bin
|
||||
WORKDIR /src
|
||||
ENV EM_CACHE /src/deps/.emcache
|
||||
CMD ["sh", "-c", "emmake make -j`nproc`"]
|
||||
|
||||
4
Makefile
4
Makefile
@@ -1,4 +1,4 @@
|
||||
SYSROOT = $(EM_CACHE)/sysroot
|
||||
SYSROOT = /emsdk/upstream/emscripten/cache/sysroot
|
||||
|
||||
# Add custom sysroot to library & macro search paths.
|
||||
export LDFLAGS += -L$(SYSROOT)/lib
|
||||
@@ -6,6 +6,8 @@ export ACLOCAL_PATH := $(SYSROOT)/share/aclocal:$(ACLOCAL_PATH)
|
||||
|
||||
# Common linking flags for all targets.
|
||||
export LDFLAGS += -s DYNAMIC_EXECUTION=0 -s AUTO_JS_LIBRARIES=0 -s AUTO_NATIVE_LIBRARIES=0
|
||||
# Temporary workaround for https://github.com/emscripten-core/emscripten/issues/16836.
|
||||
export LDFLAGS += -Wl,-u,ntohs
|
||||
|
||||
# Common compilation & linking flags for all langs and targets.
|
||||
COMMON_FLAGS = -Os -flto
|
||||
|
||||
5
build.sh
5
build.sh
@@ -16,8 +16,7 @@
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
|
||||
if [ -z "$CI" ]
|
||||
then
|
||||
if [ -z "$CI" ]; then
|
||||
DOCKER_INTERACTIVE_OPTS="-it"
|
||||
else
|
||||
DOCKER_INTERACTIVE_OPTS=""
|
||||
@@ -26,6 +25,6 @@ fi
|
||||
docker build -t web-gphoto2 - <Dockerfile
|
||||
docker run --rm $DOCKER_INTERACTIVE_OPTS \
|
||||
-v $PWD:/src \
|
||||
-u $(id -u):$(id -g) \
|
||||
-v $PWD/deps/.emcache:/emsdk/upstream/emscripten/cache \
|
||||
web-gphoto2 \
|
||||
$@
|
||||
|
||||
Reference in New Issue
Block a user