FROM alpine
RUN apk update && apk add \
	make \
	gcc \
	git \
	musl-dev \
	wget
COPY --from=lua:5.4.6 /opt/spm/lua-5.4.6/ /usr/local/
RUN wget https://github.com/lunarmodules/luafilesystem/archive/refs/tags/v1_8_0.tar.gz
RUN tar -xf v1_8_0.tar.gz
WORKDIR /luafilesystem-1_8_0
RUN mkdir patches
COPY 0001-Makefile-Replace-.so-with-.a.patch patches/
RUN git apply patches/0001-Makefile-Replace-.so-with-.a.patch
ARG PREFIX=/opt/spm/luafilesystem-1.8.0
RUN make \
    CFLAGS="-Os -ffunction-sections -fdata-sections -pedantic \
    -I/usr/local/include" \
    LUA_VERSION=5.4 \
    LIB_OPTION=
RUN make install LUA_LIBDIR=$PREFIX/lib/
