diff --git a/misc/docker/alpine/3.15/Dockerfile b/misc/docker/alpine/3.15/Dockerfile new file mode 100644 index 000000000..aa534b7a2 --- /dev/null +++ b/misc/docker/alpine/3.15/Dockerfile @@ -0,0 +1,11 @@ +FROM alpine:3.15 +ARG test +RUN apk update +RUN apk add build-base linux-headers git bash libunwind-dev +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "${test}" == "yes" ] ; then \ + cd /usr/src/uftrace && ./misc/install-deps.sh && ./configure && make && make unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh && ./configure && make && make install; \ + fi diff --git a/misc/docker/alpine/3.16/Dockerfile b/misc/docker/alpine/3.16/Dockerfile new file mode 100644 index 000000000..37f8695e2 --- /dev/null +++ b/misc/docker/alpine/3.16/Dockerfile @@ -0,0 +1,11 @@ +FROM alpine:3.16 +ARG test +RUN apk update +RUN apk add build-base linux-headers git bash libunwind-dev +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "${test}" == "yes" ] ; then \ + cd /usr/src/uftrace && ./misc/install-deps.sh && ./configure && make && make unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh && ./configure && make && make install; \ + fi diff --git a/misc/docker/centos/8/Dockerfile b/misc/docker/centos/8/Dockerfile new file mode 100644 index 000000000..0d6e50a10 --- /dev/null +++ b/misc/docker/centos/8/Dockerfile @@ -0,0 +1,20 @@ +FROM centos:8 +ARG test + +# setting package manager +RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* +RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* +RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* +RUN dnf install -y 'dnf-command(config-manager)' +RUN dnf config-manager --set-enabled powertools + +RUN dnf -y install gcc gcc-c++ git make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/centos/latest/Dockerfile b/misc/docker/centos/latest/Dockerfile new file mode 100644 index 000000000..394d97d4d --- /dev/null +++ b/misc/docker/centos/latest/Dockerfile @@ -0,0 +1,20 @@ +FROM centos:latest +ARG test + +# setting package manager +RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* +RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* +RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* +RUN dnf install -y 'dnf-command(config-manager)' +RUN dnf config-manager --set-enabled powertools + +RUN dnf -y install gcc gcc-c++ git make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/fedora/33/Dockerfile b/misc/docker/fedora/33/Dockerfile index 7cc0eb93e..1d89e381a 100644 --- a/misc/docker/fedora/33/Dockerfile +++ b/misc/docker/fedora/33/Dockerfile @@ -1,6 +1,6 @@ FROM fedora:33 ARG test -RUN yum install -y git gcc make +RUN yum install -y git gcc make libasan libubsan RUN mkdir -p /usr/src RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace RUN if [ "$test" = "yes" ] ; then \ diff --git a/misc/docker/fedora/34/Dockerfile b/misc/docker/fedora/34/Dockerfile index 0ea55f289..0a349ca13 100644 --- a/misc/docker/fedora/34/Dockerfile +++ b/misc/docker/fedora/34/Dockerfile @@ -1,6 +1,6 @@ FROM fedora:34 ARG test -RUN yum install -y git gcc make +RUN yum install -y git gcc make libasan libubsan RUN mkdir -p /usr/src RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace RUN if [ "$test" = "yes" ] ; then \ diff --git a/misc/docker/fedora/35/Dockerfile b/misc/docker/fedora/35/Dockerfile new file mode 100644 index 000000000..4a7d47d09 --- /dev/null +++ b/misc/docker/fedora/35/Dockerfile @@ -0,0 +1,12 @@ +FROM fedora:35 +ARG test +RUN yum install -y git gcc make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/fedora/36/Dockerfile b/misc/docker/fedora/36/Dockerfile new file mode 100644 index 000000000..0f0e3023f --- /dev/null +++ b/misc/docker/fedora/36/Dockerfile @@ -0,0 +1,12 @@ +FROM fedora:36 +ARG test +RUN dnf install -y git gcc make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/fedora/37/Dockerfile b/misc/docker/fedora/37/Dockerfile new file mode 100644 index 000000000..a64813f85 --- /dev/null +++ b/misc/docker/fedora/37/Dockerfile @@ -0,0 +1,12 @@ +FROM fedora:37 +ARG test +RUN dnf install -y git gcc make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/fedora/latest/Dockerfile b/misc/docker/fedora/latest/Dockerfile new file mode 100644 index 000000000..27faf2270 --- /dev/null +++ b/misc/docker/fedora/latest/Dockerfile @@ -0,0 +1,12 @@ +FROM fedora:latest +ARG test +RUN yum install -y git gcc make libasan libubsan +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/opensuse/15/Dockerfile b/misc/docker/opensuse/15/Dockerfile new file mode 100644 index 000000000..1a8fae6e5 --- /dev/null +++ b/misc/docker/opensuse/15/Dockerfile @@ -0,0 +1,14 @@ +FROM opensuse/leap:15 +ARG test +RUN zypper install -y gcc git make +RUN zypper install -y pandoc libdw-devel python3-devel ncurses-devel pkg-config libstdc++-devel +RUN zypper install -y luajit-devel libcapstone-devel +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/opensuse/latest/Dockerfile b/misc/docker/opensuse/latest/Dockerfile new file mode 100644 index 000000000..9a483c8a2 --- /dev/null +++ b/misc/docker/opensuse/latest/Dockerfile @@ -0,0 +1,14 @@ +FROM opensuse/leap:latest +ARG test +RUN zypper install -y gcc git make +RUN zypper install -y pandoc libdw-devel python3-devel ncurses-devel pkg-config libstdc++-devel +RUN zypper install -y luajit-devel libcapstone-devel +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/rockylinux/8/Dockerfile b/misc/docker/rockylinux/8/Dockerfile new file mode 100644 index 000000000..8f0ac7ac4 --- /dev/null +++ b/misc/docker/rockylinux/8/Dockerfile @@ -0,0 +1,15 @@ +FROM rockylinux:8 +ARG test +RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* +RUN dnf --enablerepo=powertools install -y pandoc +RUN dnf install -y gcc gcc-c++ git make libasan libubsan epel-release +RUN dnf install -y elfutils-devel python3-devel ncurses-devel luajit-devel capstone-devel +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/rockylinux/9/Dockerfile b/misc/docker/rockylinux/9/Dockerfile new file mode 100644 index 000000000..e7cc42332 --- /dev/null +++ b/misc/docker/rockylinux/9/Dockerfile @@ -0,0 +1,16 @@ +FROM rockylinux:9 +ARG test +RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* +RUN dnf install -y wget gcc gcc-c++ git make libasan libubsan epel-release +RUN dnf install -y elfutils-devel python3-devel ncurses-devel luajit-devel capstone-devel +RUN wget https://github.com/jgm/pandoc/releases/download/2.19.2/pandoc-2.19.2-linux-amd64.tar.gz +RUN tar xvzf pandoc-2.19.2-linux-amd64.tar.gz --strip-components 1 -C /usr/local/ +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi diff --git a/misc/docker/ubuntu/20.04/Dockerfile b/misc/docker/ubuntu/20.04/Dockerfile new file mode 100644 index 000000000..1c374807d --- /dev/null +++ b/misc/docker/ubuntu/20.04/Dockerfile @@ -0,0 +1,16 @@ +FROM ubuntu:20.04 +ARG test +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update \ + && apt-get install -y --no-install-recommends git gcc make ca-certificates +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi +RUN apt-get clean \ + && rm -rf /var/lib/apt/lists/* diff --git a/misc/docker/ubuntu/22.04/Dockerfile b/misc/docker/ubuntu/22.04/Dockerfile new file mode 100644 index 000000000..0a649e868 --- /dev/null +++ b/misc/docker/ubuntu/22.04/Dockerfile @@ -0,0 +1,16 @@ +FROM ubuntu:22.04 +ARG test +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update \ + && apt-get install -y --no-install-recommends git gcc make ca-certificates +RUN mkdir -p /usr/src +RUN git clone https://github.com/namhyung/uftrace /usr/src/uftrace +RUN if [ "$test" = "yes" ] ; then \ + cd /usr/src/uftrace \ + && ./misc/install-deps.sh -y \ + && ./configure && make ASAN=1 && make ASAN=1 unittest; \ + else \ + cd /usr/src/uftrace && ./misc/install-deps.sh -y && ./configure && make && make install; \ + fi +RUN apt-get clean \ + && rm -rf /var/lib/apt/lists/*