From 0d2b40b72e6519292bc25dc12ee40461ccce5d3d Mon Sep 17 00:00:00 2001 From: Witold Filipczyk Date: Tue, 25 Jul 2023 20:28:35 +0200 Subject: [PATCH] [docker] Updated Dockerfile for djgpp based on pld-linux .spec files --- docker/djgpp/Dockerfile | 105 ++++++++++++++++++++++++++++-- docker/djgpp/libCSS-restrict.diff | 19 ++++++ docker/djgpp/mes_djgpp.sh | 2 +- docker/djgpp/mes_djgpp_js.sh | 2 +- 4 files changed, 121 insertions(+), 7 deletions(-) create mode 100644 docker/djgpp/libCSS-restrict.diff diff --git a/docker/djgpp/Dockerfile b/docker/djgpp/Dockerfile index 6c7e4c6d..f658b728 100644 --- a/docker/djgpp/Dockerfile +++ b/docker/djgpp/Dockerfile @@ -119,16 +119,111 @@ RUN cd /root/tmp/libidn2-2.3.4; \ patch -p1 < ../getprogname.diff; \ ./build_libidn2.sh +RUN dnf -y install pkgconf-pkg-config gettext + +# netsurf +RUN cd /root; \ +wget http://download.netsurf-browser.org/libs/releases/buildsystem-1.9.tar.gz; \ +tar -xf buildsystem-1.9.tar.gz; \ +make -C buildsystem-1.9 install PREFIX=/usr/local +##rm -rf buildsystem-1.9 + +# +RUN cd /root; \ +export LIBRARY_PATH="/usr/local/lib"; \ +export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"; \ +export C_INCLUDE_PATH="/usr/local/include"; \ +export CFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export CXXFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export LDFLAGS="-L/usr/local/lib"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +wget http://download.netsurf-browser.org/libs/releases/libparserutils-0.2.4-src.tar.gz; \ +tar -xf libparserutils-0.2.4-src.tar.gz; \ +make -C libparserutils-0.2.4 install -j1 Q= PREFIX=/usr/local LIBDIR=lib COMPONENT_TYPE=lib-static +##rm -rf libparserutils-0.2.4 + +RUN cd /root; \ +export LIBRARY_PATH="/usr/local/lib"; \ +export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"; \ +export C_INCLUDE_PATH="/usr/local/include"; \ +export CFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export CXXFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export LDFLAGS="-L/usr/local/lib"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +wget http://download.netsurf-browser.org/libs/releases/libwapcaplet-0.4.3-src.tar.gz; \ +tar -xf libwapcaplet-0.4.3-src.tar.gz; \ +make -C libwapcaplet-0.4.3 install -j1 Q= PREFIX=/usr/local LIBDIR=lib COMPONENT_TYPE=lib-static +##rm -rf libwapcaplet-0.4.3 + +RUN cd /root; \ +export LIBRARY_PATH="/usr/local/lib"; \ +export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"; \ +export C_INCLUDE_PATH="/usr/local/include"; \ +export CFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export CXXFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export LDFLAGS="-L/usr/local/lib"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +wget http://download.netsurf-browser.org/libs/releases/libhubbub-0.3.7-src.tar.gz; \ +tar -xf libhubbub-0.3.7-src.tar.gz; \ +make -C libhubbub-0.3.7 install -j1 Q= PREFIX=/usr/local LIBDIR=lib COMPONENT_TYPE=lib-static +##rm -rf libhubbub-0.3.7 + +RUN cd /root; \ +rm -rf libcss-0.9.1; \ +wget http://download.netsurf-browser.org/libs/releases/libcss-0.9.1-src.tar.gz; tar -xf libcss-0.9.1-src.tar.gz +ADD libCSS-restrict.diff /root/libCSS-restrict.diff +RUN cd /root/libcss-0.9.1; patch -p1 < /root/libCSS-restrict.diff; \ +printf '\ngen: $(PRE_TARGETS)\n' >> Makefile; \ +cd ..; \ +export LIBRARY_PATH="/usr/local/lib"; \ +export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"; \ +export C_INCLUDE_PATH="/usr/local/include"; \ +export CFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export CXXFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export LDFLAGS="-L/usr/local/lib"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +export HOST="i586-pc-msdosdjgpp"; \ +export BUILD_CC=cc; \ +mv -f /usr/local /usr/local3; \ +mkdir -p /usr/local/share; \ +cp -a /usr/local3/share/netsurf-buildsystem /usr/local/share/; \ +make -C libcss-0.9.1 -j1 Q= PREFIX=/usr/local LIBDIR=lib gen +RUN cd /root; \ +mv -f /usr/local /usr/local4; \ +mv -f /usr/local3 /usr/local; \ +export LIBRARY_PATH="/usr/local/lib"; \ +export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"; \ +export C_INCLUDE_PATH="/usr/local/include"; \ +export CFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export CXXFLAGS="-O2 -I/usr/local/include -Wno-error -DWATT32_NO_NAMESPACE -U__STRICT_ANSI__"; \ +export LDFLAGS="-L/usr/local/lib"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +export HOST="i586-pc-msdosdjgpp"; \ +make -C libcss-0.9.1 install -j1 Q= PREFIX=/usr/local LIBDIR=lib COMPONENT_TYPE=lib-static +##rm -rf libcss-0.9.1 + +RUN cd /root; \ +export CFLAGS="-Wno-error"; \ +export CC="i586-pc-msdosdjgpp-gcc"; \ +export AR="i586-pc-msdosdjgpp-ar"; \ +wget http://download.netsurf-browser.org/libs/releases/libdom-0.4.1-src.tar.gz; \ +tar -xf libdom-0.4.1-src.tar.gz; \ +make -C libdom-0.4.1 install -j1 Q= PREFIX=/usr/local LIBDIR=lib COMPONENT_TYPE=lib-static +##rm -rf libdom-0.4.1 + # [*] elinks sources # get elinks source -RUN dnf -y install pkgconf-pkg-config gettext RUN cd /root; git clone https://github.com/rkd77/elinks ADD mes_djgpp.sh /root/elinks/mes_djgpp.sh RUN cd /root/elinks; \ ./mes_djgpp.sh; -ADD mes_djgpp_js.sh /root/elinks/mes_djgpp_js.sh -RUN cd /root/elinks; \ -# -#./mes_djgpp_js.sh; +# ADD mes_djgpp_js.sh /root/elinks/mes_djgpp_js.sh +# RUN cd /root/elinks; \ +# ./mes_djgpp_js.sh; diff --git a/docker/djgpp/libCSS-restrict.diff b/docker/djgpp/libCSS-restrict.diff new file mode 100644 index 00000000..69e9497b --- /dev/null +++ b/docker/djgpp/libCSS-restrict.diff @@ -0,0 +1,19 @@ +--- libcss-0.8.0/include/libcss/computed.h.orig 2018-08-22 15:27:44.000000000 +0200 ++++ libcss-0.8.0/include/libcss/computed.h 2018-12-29 19:02:55.633399014 +0100 +@@ -79,13 +79,13 @@ + css_error css_computed_style_destroy(css_computed_style *style); + + css_error css_computed_style_compose( +- const css_computed_style *restrict parent, +- const css_computed_style *restrict child, ++ const css_computed_style *__restrict parent, ++ const css_computed_style *__restrict child, + css_error (*compute_font_size)(void *pw, + const struct css_hint *parent, + struct css_hint *size), + void *pw, +- css_computed_style **restrict result); ++ css_computed_style **__restrict result); + + /****************************************************************************** + * Property accessors below here * diff --git a/docker/djgpp/mes_djgpp.sh b/docker/djgpp/mes_djgpp.sh index 3af65cdf..667dc99f 100755 --- a/docker/djgpp/mes_djgpp.sh +++ b/docker/djgpp/mes_djgpp.sh @@ -31,7 +31,7 @@ meson setup /tmp/builddir --cross-file cross/linux-djgpp.txt \ -Dguile=false \ -Didn=true \ -Dipv6=true \ --Dlibcss=false \ +-Dlibcss=true \ -Dlibcurl=false \ -Dlibev=false \ -Dlibevent=false \ diff --git a/docker/djgpp/mes_djgpp_js.sh b/docker/djgpp/mes_djgpp_js.sh index 3e2f617b..81f8336f 100755 --- a/docker/djgpp/mes_djgpp_js.sh +++ b/docker/djgpp/mes_djgpp_js.sh @@ -31,7 +31,7 @@ meson setup /tmp/builddir2 --cross-file cross/linux-djgpp.txt \ -Dguile=false \ -Didn=true \ -Dipv6=true \ --Dlibcss=false \ +-Dlibcss=true \ -Dlibcurl=false \ -Dlibev=false \ -Dlibevent=false \