From b12751e10ddcd5254791a97c859cfdb4b6471601 Mon Sep 17 00:00:00 2001 From: Martin Potier Date: Thu, 5 Nov 2015 23:19:38 +0100 Subject: [PATCH] Make archlinux path compatible and add libffi --- Makefile | 82 +++++++++++++++++++++++++++---------------------------- README.md | 4 +++ 2 files changed, 44 insertions(+), 42 deletions(-) diff --git a/Makefile b/Makefile index 204ed85..849b521 100644 --- a/Makefile +++ b/Makefile @@ -6,32 +6,36 @@ root/bin: | root @mkdir root/bin root/etc: | root @mkdir root/etc +root/etc/hosts: | root/etc + @cp /etc/hosts root/etc/hosts root/bin/sh: | root/bin @cp -L /bin/sh root/bin/ root/lib: | root @mkdir root/lib -root/lib/x86_64-linux-gnu: | root/lib - @mkdir root/lib/x86_64-linux-gnu -root/lib/x86_64-linux-gnu/libc.so.6: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libdl.so.2: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libm.so.6: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libpthread.so.0: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libutil.so.1: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/librt.so.1: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libz.so.1: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libz.so.1 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libnss_files.so.2: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libnss_files.so.2 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libnss_dns.so.2: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libnss_dns.so.2 root/lib/x86_64-linux-gnu/ -root/lib/x86_64-linux-gnu/libresolv.so.2: | root/lib/x86_64-linux-gnu - @cp -L /lib/x86_64-linux-gnu/libresolv.so.2 root/lib/x86_64-linux-gnu/ +root/usr/lib: | root/lib root/usr + @mkdir root/usr/lib +root/usr/lib/libc.so.6: | root/usr/lib + @cp -L /usr/lib/libc.so.6 root/usr/lib/ +root/usr/lib/libdl.so.2: | root/usr/lib + @cp -L /usr/lib/libdl.so.2 root/usr/lib/ +root/usr/lib/libffi.so.6: | root/usr/lib + @cp -L /usr/lib/libffi.so.6 root/usr/lib/ +root/usr/lib/libm.so.6: | root/usr/lib + @cp -L /usr/lib/libm.so.6 root/usr/lib/ +root/usr/lib/libpthread.so.0: | root/usr/lib + @cp -L /usr/lib/libpthread.so.0 root/usr/lib/ +root/usr/lib/libutil.so.1: | root/usr/lib + @cp -L /usr/lib/libutil.so.1 root/usr/lib/ +root/usr/lib/librt.so.1: | root/usr/lib + @cp -L /usr/lib/librt.so.1 root/usr/lib/ +root/usr/lib/libz.so.1: | root/usr/lib + @cp -L /usr/lib/libz.so.1 root/usr/lib/ +root/usr/lib/libnss_files.so.2: | root/usr/lib + @cp -L /usr/lib/libnss_files.so.2 root/usr/lib/ +root/usr/lib/libnss_dns.so.2: | root/usr/lib + @cp -L /usr/lib/libnss_dns.so.2 root/usr/lib/ +root/usr/lib/libresolv.so.2: | root/usr/lib + @cp -L /usr/lib/libresolv.so.2 root/usr/lib/ root/lib64: | root @mkdir root/lib64 root/lib64/ld-linux-x86-64.so.2: | root/lib64 @@ -42,29 +46,23 @@ root/etc/services: | root/etc @cp -L /etc/services root/etc/ root/usr: | root @mkdir root/usr -root/usr/lib: | root/usr - @mkdir root/usr/lib -root/usr/lib/x86_64-linux-gnu: | root/usr/lib - @mkdir root/usr/lib/x86_64-linux-gnu -root/usr/lib/x86_64-linux-gnu/gconv: | root/usr/lib/x86_64-linux-gnu - @mkdir root/usr/lib/x86_64-linux-gnu/gconv -root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so: | root/usr/lib/x86_64-linux-gnu/gconv - @cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/ -root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so: | root/usr/lib/x86_64-linux-gnu/gconv - @cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/ -root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so: | root/usr/lib/x86_64-linux-gnu/gconv - @cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/ -root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules: | root/usr/lib/x86_64-linux-gnu/gconv - @cp -L /usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/ -root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache: | root/usr/lib/x86_64-linux-gnu/gconv/ - @cp -L /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache root/usr/lib/x86_64-linux-gnu/gconv/ -root/usr/lib/x86_64-linux-gnu/libgmp.so.10: | root/usr/lib/x86_64-linux-gnu - @cp -L /usr/lib/x86_64-linux-gnu/libgmp.so.10 root/usr/lib/x86_64-linux-gnu/ +root/usr/lib/gconv: | root/usr/lib + @mkdir root/usr/lib/gconv +root/usr/lib/gconv/UTF-16.so: | root/usr/lib/gconv + @cp -L /usr/lib/gconv/UTF-16.so root/usr/lib/gconv/ +root/usr/lib/gconv/UTF-32.so: | root/usr/lib/gconv + @cp -L /usr/lib/gconv/UTF-32.so root/usr/lib/gconv/ +root/usr/lib/gconv/UTF-7.so: | root/usr/lib/gconv + @cp -L /usr/lib/gconv/UTF-7.so root/usr/lib/gconv/ +root/usr/lib/gconv/gconv-modules: | root/usr/lib/gconv + @cp -L /usr/lib/gconv/gconv-modules root/usr/lib/gconv/ +root/usr/lib/libgmp.so.10: | root/usr/lib + @cp -L /usr/lib/libgmp.so.10 root/usr/lib/ -docker-integer-gmp: | root/bin/sh root/lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache root/usr/lib/x86_64-linux-gnu/libgmp.so.10 root/lib/x86_64-linux-gnu/libnss_files.so.2 root/lib/x86_64-linux-gnu/libnss_dns.so.2 root/lib/x86_64-linux-gnu/libresolv.so.2 root/etc/protocols root/etc/services +docker-integer-gmp: | root/bin/sh root/etc/hosts root/usr/lib/libc.so.6 root/usr/lib/libdl.so.2 root/usr/lib/libffi.so.6 root/usr/lib/libm.so.6 root/usr/lib/libpthread.so.0 root/usr/lib/librt.so.1 root/usr/lib/libutil.so.1 root/usr/lib/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/gconv/UTF-16.so root/usr/lib/gconv/UTF-32.so root/usr/lib/gconv/UTF-7.so root/usr/lib/gconv/gconv-modules root/usr/lib/libgmp.so.10 root/usr/lib/libnss_files.so.2 root/usr/lib/libnss_dns.so.2 root/usr/lib/libresolv.so.2 root/etc/protocols root/etc/services @tar -cC root .|docker import - haskell-scratch:integer-gmp -docker-integer-simple: | root/bin/sh root/lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache root/lib/x86_64-linux-gnu/libnss_files.so.2 root/lib/x86_64-linux-gnu/libnss_dns.so.2 root/lib/x86_64-linux-gnu/libresolv.so.2 root/etc/protocols root/etc/services +docker-integer-simple: | root/bin/sh root/etc/hosts root/usr/lib/libc.so.6 root/usr/lib/libdl.so.2 root/usr/lib/libffi.so.6 root/usr/lib/libm.so.6 root/usr/lib/libpthread.so.0 root/usr/lib/librt.so.1 root/usr/lib/libutil.so.1 root/usr/lib/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/gconv/UTF-16.so root/usr/lib/gconv/UTF-32.so root/usr/lib/gconv/UTF-7.so root/usr/lib/gconv/gconv-modules root/usr/lib/libnss_files.so.2 root/usr/lib/libnss_dns.so.2 root/usr/lib/libresolv.so.2 root/etc/protocols root/etc/services @tar -c --exclude=libgmp.so.10 -C root .|docker import - haskell-scratch:integer-simple clean: diff --git a/README.md b/README.md index 5025b73..ce0001e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,6 @@ # haskell-scratch Base Docker image which includes minimal shared libraries for GHC-compiled executables + +Modifications to the original project : + - This project works with Archlinux path style. + - libffi was required and added.