def test_runtime(self): """Runtime""" g = gdrcopy() r = g.runtime() self.assertEqual( r, r'''# GDRCOPY COPY --from=0 /usr/local/gdrcopy /usr/local/gdrcopy ENV CPATH=/usr/local/gdrcopy/include:$CPATH \ LD_LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LD_LIBRARY_PATH \ LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LIBRARY_PATH''')
def test_defaults_centos(self): """Default gdrcopy building block""" g = gdrcopy() self.assertEqual( str(g), r'''# GDRCOPY version 2.0 RUN yum install -y \ make \ wget && \ rm -rf /var/cache/yum/* RUN mkdir -p /var/tmp && wget -q -nc --no-check-certificate -P /var/tmp https://github.com/NVIDIA/gdrcopy/archive/v2.0.tar.gz && \ mkdir -p /var/tmp && tar -x -f /var/tmp/v2.0.tar.gz -C /var/tmp -z && \ cd /var/tmp/gdrcopy-2.0 && \ mkdir -p /usr/local/gdrcopy/include /usr/local/gdrcopy/lib64 && \ make PREFIX=/usr/local/gdrcopy lib lib_install && \ rm -rf /var/tmp/v2.0.tar.gz /var/tmp/gdrcopy-2.0 ENV CPATH=/usr/local/gdrcopy/include:$CPATH \ LD_LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LD_LIBRARY_PATH \ LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LIBRARY_PATH''')
def test_ldconfig(self): """ldconfig option""" g = gdrcopy(ldconfig=True, version='1.3') self.assertEqual( str(g), r'''# GDRCOPY version 1.3 RUN apt-get update -y && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ make \ wget && \ rm -rf /var/lib/apt/lists/* RUN mkdir -p /var/tmp && wget -q -nc --no-check-certificate -P /var/tmp https://github.com/NVIDIA/gdrcopy/archive/v1.3.tar.gz && \ mkdir -p /var/tmp && tar -x -f /var/tmp/v1.3.tar.gz -C /var/tmp -z && \ cd /var/tmp/gdrcopy-1.3 && \ mkdir -p /usr/local/gdrcopy/include /usr/local/gdrcopy/lib64 && \ make PREFIX=/usr/local/gdrcopy lib lib_install && \ echo "/usr/local/gdrcopy/lib64" >> /etc/ld.so.conf.d/hpccm.conf && ldconfig && \ rm -rf /var/tmp/v1.3.tar.gz /var/tmp/gdrcopy-1.3 ENV CPATH=/usr/local/gdrcopy/include:$CPATH \ LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LIBRARY_PATH''')
def test_defaults_ubuntu(self): """Default gdrcopy building block""" g = gdrcopy() self.assertEqual( str(g), r'''# GDRCOPY version 2.0 RUN apt-get update -y && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ make \ wget && \ rm -rf /var/lib/apt/lists/* RUN mkdir -p /var/tmp && wget -q -nc --no-check-certificate -P /var/tmp https://github.com/NVIDIA/gdrcopy/archive/v2.0.tar.gz && \ mkdir -p /var/tmp && tar -x -f /var/tmp/v2.0.tar.gz -C /var/tmp -z && \ cd /var/tmp/gdrcopy-2.0 && \ mkdir -p /usr/local/gdrcopy/include /usr/local/gdrcopy/lib64 && \ make PREFIX=/usr/local/gdrcopy lib lib_install && \ rm -rf /var/tmp/v2.0.tar.gz /var/tmp/gdrcopy-2.0 ENV CPATH=/usr/local/gdrcopy/include:$CPATH \ LD_LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LD_LIBRARY_PATH \ LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LIBRARY_PATH''')
def test_toolchain(self): """Toolchain""" tc = toolchain(CC='gcc', CFLAGS='-O2') g = gdrcopy(toolchain=tc, version='2.1') self.assertEqual( str(g), r'''# GDRCOPY version 2.1 RUN apt-get update -y && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ make \ wget && \ rm -rf /var/lib/apt/lists/* RUN mkdir -p /var/tmp && wget -q -nc --no-check-certificate -P /var/tmp https://github.com/NVIDIA/gdrcopy/archive/v2.1.tar.gz && \ mkdir -p /var/tmp && tar -x -f /var/tmp/v2.1.tar.gz -C /var/tmp -z && \ cd /var/tmp/gdrcopy-2.1 && \ mkdir -p /usr/local/gdrcopy/include /usr/local/gdrcopy/lib64 && \ make CC=gcc COMMONCFLAGS=-O2 PREFIX=/usr/local/gdrcopy lib lib_install && \ rm -rf /var/tmp/gdrcopy-2.1 /var/tmp/v2.1.tar.gz ENV CPATH=/usr/local/gdrcopy/include:$CPATH \ LD_LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LD_LIBRARY_PATH \ LIBRARY_PATH=/usr/local/gdrcopy/lib64:$LIBRARY_PATH''')