diff --git a/.gitignore b/.gitignore index efd561988da1dd641fca5c1bfd9c5ac8706ea198..046b8eceb5a4c01d9387efd12e7b68e75ec322bf 100644 --- a/.gitignore +++ b/.gitignore @@ -54,6 +54,9 @@ third_party/can_card_library/esd_can/lib # Map data files modules/map/data +#dockerfile tarballs +docker/build/archive/ + # python proto py_proto *_pb2.py diff --git a/docker/build/installers/install_bosfs.sh b/docker/build/installers/install_bosfs.sh index fa3c1a1e8afe73831f790b1ca3967a2c3ff4b9db..6a387e59e0fb361a0b20e4029a9860e042d60f99 100755 --- a/docker/build/installers/install_bosfs.sh +++ b/docker/build/installers/install_bosfs.sh @@ -20,25 +20,34 @@ set -e cd "$(dirname "${BASH_SOURCE[0]}")" - +. /tmp/installers/installer_base.sh # Prepare -apt-get update -y -apt-get install -y \ - automake \ - libcrypto++-dev \ - libcurl4-openssl-dev \ - libfuse-dev \ - libssl-dev \ - uuid-dev - -PACKAGE="bosfs-1.0.0.10.tar.gz" -wget http://sdk.bce.baidu.com/console-sdk/${PACKAGE} +apt-get update -y && \ + apt-get install -y \ + libcrypto++-dev \ + libcurl4-openssl-dev \ + libfuse-dev \ + libssl-dev \ + uuid-dev + +VERSION=1.0.0 +PACKAGE="bosfs-${VERSION}.10.tar.gz" +DOWNLOAD_LINK="http://sdk.bce.baidu.com/console-sdk/${PACKAGE}" +CHECKSUM="83999e2a8ec7a9ebb1afe462ac898ec95d887391c94375d94d607fba35b9133b" + +download_if_not_cached "${PACKAGE}" "$CHECKSUM" "$DOWNLOAD_LINK" + tar zxf ${PACKAGE} # Build and install. -pushd bosfs-1.0.0 - bash build.sh +pushd bosfs-${VERSION} + sed -i '/cd bosfs/d' build.sh + bash build.sh popd +ok "Successfully installed bosfs-${VERSION}." + # Clean -rm -fr ${PACKAGE} bosfs-1.0.0 +rm -fr ${PACKAGE} "bosfs-${VERSION}" +apt-get clean && \ + rm -rf /var/lib/apt/lists/* diff --git a/docker/build/installers/install_glew.sh b/docker/build/installers/install_glew.sh index cc4631b5cf81500bb0e4aaf00092394d49db72bc..ec302b99262419dfa029a4b1f5a77af56d8c7b38 100755 --- a/docker/build/installers/install_glew.sh +++ b/docker/build/installers/install_glew.sh @@ -21,25 +21,14 @@ set -e cd "$(dirname "${BASH_SOURCE[0]}")" -# Install OpenGL -echo "deb http://ppa.launchpad.net/keithw/glfw3/ubuntu trusty main" | \ - sudo tee -a /etc/apt/sources.list.d/fillwave_ext.list -echo "deb-src http://ppa.launchpad.net/keithw/glfw3/ubuntu trusty main" | \ - sudo tee -a /etc/apt/sources.list.d/fillwave_ext.list -apt-get update -y -apt-get install -y --force-yes libglfw3 libglfw3-dev freeglut3-dev +apt-get -y update && \ + apt-get -y install \ + libglfw3-dev \ + freeglut3-dev \ + libglew-dev -# Install GLEW -wget https://github.com/nigels-com/glew/releases/download/glew-2.0.0/glew-2.0.0.zip -unzip glew-2.0.0.zip -pushd glew-2.0.0 -make -j8 -make install -popd +# NOTES from storypku: +# libglfw3-dev depends on libglfw3, +# and libglew-dev have a dependency over libglew2.0 -ln -s /usr/lib64/libGLEW.so /usr/lib/libGLEW.so -ln -s /usr/lib64/libGLEW.so.2.0 /usr/lib/libGLEW.so.2.0 -# Clean up. -apt-get clean && rm -rf /var/lib/apt/lists/* -rm -fr glew-2.0.0.zip glew-2.0.0 /etc/apt/sources.list.d/fillwave_ext.list diff --git a/docker/build/installers/install_openh264.sh b/docker/build/installers/install_openh264.sh index cde7c48d5bd3bd66272abca37d977ba007cc6eb0..3726fdbebe0cc5b429dace6a8fea600d5ba4996c 100644 --- a/docker/build/installers/install_openh264.sh +++ b/docker/build/installers/install_openh264.sh @@ -21,18 +21,28 @@ set -e cd "$(dirname "${BASH_SOURCE[0]}")" +apt-get -y update && \ + apt-get -y install \ + nasm + +. /tmp/installers/installer_base.sh + +VERSION="2.0.0" +PKG_NAME="openh264-${VERSION}.tar.gz" +CHECKSUM="73c35f80cc487560d11ecabb6d31ad828bd2f59d412f9cd726cc26bfaf4561fd" +DOWNLOAD_LINK="https://github.com/cisco/openh264/archive/v${VERSION}.tar.gz" + # Prepare -PACKAGE="v2.0.0.tar.gz" -OPEN_H264="openh264-2.0.0" -wget https://github.com/cisco/openh264/archive/${PACKAGE} -tar zxf ${PACKAGE} +download_if_not_cached "$PKG_NAME" "$CHECKSUM" "$DOWNLOAD_LINK" + +tar xzf ${PKG_NAME} # Build and install. -pushd ${OPEN_H264} - make +pushd openh264-${VERSION} + make -j`nproc` make install popd # Clean -rm -fr ${PACKAGE} ${OPEN_H264} +rm -fr "${PKG_NAME}" "openh264-${VERSION}" diff --git a/docker/build/installers/post_install.sh b/docker/build/installers/post_install.sh index 532fdfd0017da0fac3397a47e7011d6a7c3fcd89..68c17b6b256f6aa6c446b463d717d5ac6c54e120 100755 --- a/docker/build/installers/post_install.sh +++ b/docker/build/installers/post_install.sh @@ -27,3 +27,6 @@ ln -rs /usr/lib/x86_64-linux-gnu/libtcmalloc_and_profiler.so.4 /usr/lib/libtcmal # https://stackoverflow.com/questions/25193161/chfn-pam-system-error-intermittently-in-docker-hub-builds ln -s -f /bin/true /usr/bin/chfn + +# Remove tarballs +rm -rf /tmp/archive diff --git a/third_party/glew.BUILD b/third_party/glew.BUILD index 71c5dd77ded2fa22c20fdb66efac7bf193db7b3e..17e4905c55aeb269f3381eb86b769947ea77e590 100644 --- a/third_party/glew.BUILD +++ b/third_party/glew.BUILD @@ -6,7 +6,6 @@ cc_library( name = "glew", includes = ["."], linkopts = [ - "-L/usr/lib64", "-lGLEW", ], )