--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/.dockerignore Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,4 @@
+.?*
+Dockerfile
+Vagrantfile
+*.log
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Dockerfile Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,27 @@
+# Builds Beremiz windows installer
+
+# usage :
+# docker build --build-arg UID=$(id -u) --build-arg GID=$(id -g) -t beremiz_builder .
+# docker run -v ~/src:/home/devel/src -v ~/build/:/home/devel/build --rm beremiz_builder
+
+FROM ubuntu:xenial
+
+ENV TERM xterm-256color
+
+COPY provision_xenial64.sh .
+
+RUN ./provision_xenial64.sh
+
+ARG UNAME=devel
+ENV UNAME ${UNAME}
+ARG UID=1000
+ARG GID=1000
+RUN groupadd -g $GID $UNAME
+RUN useradd -m -u $UID -g $GID -s /bin/bash $UNAME
+USER $UNAME
+
+RUN mkdir /home/$UNAME/build /home/$UNAME/src
+COPY . /home/$UNAME/src/beremiz_public_dist/
+
+CMD xvfb-run make -C /home/$UNAME/build -f /home/$UNAME/src/beremiz_public_dist/Makefile
+
--- a/Makefile Fri Dec 01 08:19:47 2017 +0000
+++ b/Makefile Tue Dec 05 00:11:48 2017 +0100
@@ -27,9 +27,9 @@
version = 1.2-rc1
-HGROOT := ~/src
+HGREMOTE ?= https://hg.beremiz.org/
+HGROOT ?= $(abspath $(CURDIR)/..)
GITROOT := $(HGROOT)
-HGPULL = 0
DIST =
CPUS = 8
BLKDEV=/dev/null
@@ -50,20 +50,10 @@
sfmirror = downloads
tmp := $(shell mktemp -d)
-ifeq ("$(HGPULL)","1")
define hg_get_archive
-hg -R $(HGROOT)/`basename $(1)` pull
-hg -R $(HGROOT)/`basename $(1)` update $(2)
-hg -R $(HGROOT)/`basename $(1)` archive $(1)
-endef
-else
-define hg_get_archive
+test -d $(HGROOT)/`basename $(1)` || hg --cwd $(HGROOT) clone $(HGREMOTE)`basename $(1)`
hg -R $(HGROOT)/`basename $(1)` archive $(2) $(1)
-endef
-endif
-
-define hg_get_rev_num
-hg -R $(HGROOT)/`basename $(1)` id -i | sed 's/\+//' > $(2)
+hg -R $(HGROOT)/`basename $(1)` id -i | sed 's/\+//' > $(1)/revision
endef
define get_src_hg
@@ -86,7 +76,7 @@
endef
define get_src_sf
-$(call get_src_http,http://$(sfmirror).sourceforge.net/project/$(1),$(2))
+$(call get_src_http,https://$(sfmirror).sourceforge.net/project/$(1),$(2))
endef
all: Beremiz-$(version).exe $(targets_add)
@@ -109,41 +99,42 @@
mingwdir=build/mingw
define get_mingw
-$(call get_src_sf,mingw/MinGW/Base/$(1),$(2)) tar -C $(mingwdir) --lzma -xf $$dld
+$(call get_src_sf,mingw/MinGW/Base/$(1),$(2)) tar -C $(mingwdir) -xf $$dld
endef
define get_msys
-$(call get_src_sf,mingw/MSYS/Base/$(1),$(2)) tar -C $(mingwdir) --lzma -xf $$dld
+$(call get_src_sf,mingw/MSYS/Base/$(1),$(2)) tar -C $(mingwdir) -xf $$dld
endef
mingw: |build
rm -rf $(mingwdir)
mkdir -p $(mingwdir)
# windows.h
- $(call get_mingw,w32api/w32api-3.17,w32api-3.17-2-mingw32-dev.tar.lzma)
+ $(call get_mingw,w32api/w32api-5.0.1,w32api-5.0.1-mingw32-dev.tar.xz)
# mingw runtime
- $(call get_mingw,mingwrt/mingwrt-3.20,mingwrt-3.20-2-mingw32-dll.tar.lzma)
+ $(call get_mingw,mingwrt/mingwrt-5.0.1,mingwrt-5.0.1-mingw32-dll.tar.xz)
# mingw headers and lib
- $(call get_mingw,mingwrt/mingwrt-3.20,mingwrt-3.20-2-mingw32-dev.tar.lzma)
+ $(call get_mingw,mingwrt/mingwrt-5.0.1,mingwrt-5.0.1-mingw32-dev.tar.xz)
# binutils
$(call get_mingw,binutils/binutils-2.28,binutils-2.28-1-mingw32-bin.tar.xz)
# C compiler
- $(call get_mingw,gcc/Version4/gcc-4.6.1-2,gcc-core-4.6.1-2-mingw32-bin.tar.lzma)
+ $(call get_mingw,gcc/Version6/gcc-6.3.0,gcc-core-6.3.0-1-mingw32-bin.tar.xz)
# dependencies
- $(call get_mingw,gmp/gmp-5.0.1-1,libgmp-5.0.1-1-mingw32-dll-10.tar.lzma)
- $(call get_mingw,mpc/mpc-0.8.1-1,libmpc-0.8.1-1-mingw32-dll-2.tar.lzma)
- $(call get_mingw,mpfr/mpfr-2.4.1-1,libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma)
- $(call get_mingw,gettext/gettext-0.17-1,libintl-0.17-1-mingw32-dll-8.tar.lzma)
- $(call get_mingw,gettext/gettext-0.17-1,libgettextpo-0.17-1-mingw32-dll-0.tar.lzma)
- $(call get_mingw,libiconv/libiconv-1.13.1-1,libiconv-1.13.1-1-mingw32-dll-2.tar.lzma)
+ $(call get_mingw,gmp/gmp-6.1.2,libgmp-6.1.2-2-mingw32-dll-10.tar.xz)
+ $(call get_mingw,mpc/mpc-1.0.3,libmpc-1.0.3-1-mingw32-dll-3.tar.xz)
+ $(call get_mingw,mpfr/mpfr-3.1.5,libmpfr-3.1.5-1-mingw32-dll-4.tar.xz)
+ $(call get_mingw,gettext/gettext-0.18.3.2-2,libintl-0.18.3.2-2-mingw32-dll-8.tar.xz)
+ $(call get_mingw,gettext/gettext-0.18.3.2-2,libgettextpo-0.18.3.2-2-mingw32-dll-0.tar.xz)
+ $(call get_mingw,libiconv/libiconv-1.14-3,libiconv-1.14-3-mingw32-dll.tar.lzma)
+
# make, bash, and dependencies
- $(call get_msys,bash/bash-3.1.17-3,bash-3.1.17-3-msys-1.0.13-bin.tar.lzma)
+ $(call get_msys,bash/bash-3.1.23-1,bash-3.1.23-1-msys-1.0.18-bin.tar.xz)
$(call get_msys,coreutils/coreutils-5.97-3,coreutils-5.97-3-msys-1.0.13-bin.tar.lzma)
- $(call get_msys,libiconv/libiconv-1.13.1-2,libiconv-1.13.1-2-msys-1.0.13-bin.tar.lzma)
- $(call get_msys,libiconv/libiconv-1.13.1-2,libiconv-1.13.1-2-msys-1.0.13-dll-2.tar.lzma)
- $(call get_msys,gettext/gettext-0.17-2,libintl-0.17-2-msys-dll-8.tar.lzma)
+ $(call get_msys,libiconv/libiconv-1.14-1,libiconv-1.14-1-msys-1.0.17-bin.tar.lzma)
+ $(call get_msys,libiconv/libiconv-1.14-1,libiconv-1.14-1-msys-1.0.17-dll-2.tar.lzma)
+ $(call get_msys,gettext/gettext-0.18.1.1-1,libintl-0.18.1.1-1-msys-1.0.17-dll-8.tar.lzma)
$(call get_msys,regex/regex-1.20090805-2,libregex-1.20090805-2-msys-1.0.13-dll-1.tar.lzma)
$(call get_msys,termcap/termcap-0.20050421_1-2,libtermcap-0.20050421_1-2-msys-1.0.13-dll-0.tar.lzma)
$(call get_msys,make/make-3.81-3,make-3.81-3-msys-1.0.13-bin.tar.lzma)
- $(call get_msys,msys-core/msys-1.0.13-2,msysCORE-1.0.13-2-msys-1.0.13-bin.tar.lzma)
+ $(call get_msys,msys-core/msys-1.0.19-1,msysCORE-1.0.19-1-msys-1.0.19-bin.tar.xz)
$(call get_msys,termcap/termcap-0.20050421_1-2,libtermcap-0.20050421_1-2-msys-1.0.13-dll-0.tar.lzma)
touch $@
@@ -270,7 +261,6 @@
beremiz: | build examples
$(call get_src_hg,build/beremiz)
- $(call hg_get_rev_num,beremiz,build/beremiz/revision)
$(call tweak_beremiz_targets)
rm -rf examples/canopen_tests
mkdir -p examples/canopen_tests
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/bash-3.1.23-1-msys-1.0.18-bin.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+53043793a56815ee69d42f13e686502d bash-3.1.23-1-msys-1.0.18-bin.tar.xz
--- a/distfiles/binutils-2.28-1-mingw32-bin.tar.xz.md5 Fri Dec 01 08:19:47 2017 +0000
+++ b/distfiles/binutils-2.28-1-mingw32-bin.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -1,1 +1,1 @@
-d9ede5b43ac380c342a95e68434d9957 binutils-2.28-1-mingw32-bin.tar.xz
\ No newline at end of file
+d9ede5b43ac380c342a95e68434d9957 binutils-2.28-1-mingw32-bin.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/gcc-core-6.3.0-1-mingw32-bin.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+1cfe1fdee114eef48fdd73152d86359f gcc-core-6.3.0-1-mingw32-bin.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libgettextpo-0.18.3.2-2-mingw32-dll-0.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+947791bab6222a5235d22eaa08abae02 libgettextpo-0.18.3.2-2-mingw32-dll-0.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libgmp-6.1.2-2-mingw32-dll-10.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+42272c91de90179a88d96a883c90fe6f libgmp-6.1.2-2-mingw32-dll-10.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libiconv-1.14-1-msys-1.0.17-bin.tar.lzma.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+6b6f6d7d5b65bed9163324e73bdd6e28 libiconv-1.14-1-msys-1.0.17-bin.tar.lzma
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libiconv-1.14-1-msys-1.0.17-dll-2.tar.lzma.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+6ffa2b9fdb3711582d6a99bab4389de6 libiconv-1.14-1-msys-1.0.17-dll-2.tar.lzma
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libiconv-1.14-3-mingw32-dll.tar.lzma.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+8681a7ccae5834d9e1f81284de3fb29e libiconv-1.14-3-mingw32-dll.tar.lzma
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libintl-0.18.1.1-1-msys-1.0.17-dll-8.tar.lzma.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+8d3561e8f94acfe0b9139aa658bb5e34 libintl-0.18.1.1-1-msys-1.0.17-dll-8.tar.lzma
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libintl-0.18.3.2-2-mingw32-dll-8.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+0721c923462f175edf6238ccbaa55978 libintl-0.18.3.2-2-mingw32-dll-8.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libmpc-1.0.3-1-mingw32-dll-3.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+6399bf33822bdc727c0b824918657610 libmpc-1.0.3-1-mingw32-dll-3.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/libmpfr-3.1.5-1-mingw32-dll-4.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+b749fb6c64e0853eb079c46dd277075b libmpfr-3.1.5-1-mingw32-dll-4.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/mingwrt-5.0.1-mingw32-dev.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+2c6dd5cfe83d415e6355a493ff8a5ab4 mingwrt-5.0.1-mingw32-dev.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/mingwrt-5.0.1-mingw32-dll.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+7ccecfda7883b0a3f78f154a0260001c mingwrt-5.0.1-mingw32-dll.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/msysCORE-1.0.19-1-msys-1.0.19-bin.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+07035115c5ea57c3aae81df1b676f2c0 msysCORE-1.0.19-1-msys-1.0.19-bin.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distfiles/w32api-5.0.1-mingw32-dev.tar.xz.md5 Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,1 @@
+4cd1e3342a047dbc00cce21bc231f21a w32api-5.0.1-mingw32-dev.tar.xz
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/provision_xenial64.sh Tue Dec 05 00:11:48 2017 +0100
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+
+# This script is to be executed as root to provision necessary stuff
+# to run distribution build on a blank Ubuntu Xenial 64 image
+
+set -xe
+dpkg --add-architecture i386
+apt-get update
+
+apt-get install -y --no-install-recommends \
+ autoconf \
+ automake \
+ bison \
+ build-essential \
+ ca-certificates \
+ flex \
+ gettext \
+ git \
+ lzma \
+ make \
+ mercurial \
+ mingw-w64 \
+ nsis \
+ texinfo \
+ unrar \
+ wget \
+ xvfb \
+ unzip
+
+ echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections
+ echo ttf-mscorefonts-installer msttcorefonts/present-mscorefonts-eula note | debconf-set-selections
+
+apt-get install -y --install-recommends \
+ wine
+
+apt-get clean -y