cmake_release_unix_package.sh 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #!/bin/sh
  2. #
  3. # CMake UNIX Release Script.
  4. #
  5. # Run this in the directory where cmake_release_unix_build was run.
  6. #
  7. # Find our own script's location.
  8. SELFPATH=`cd \`echo $0 | sed -n '/\//{s/\/[^\/]*$//;p;}'\`;pwd`
  9. # Read the configuration.
  10. . ${SELFPATH}/cmake_release_unix_config.sh
  11. # Cleanup from possible previous run.
  12. rm -rf ${INSTALL_DIR} ${TARBALL_DIR}
  13. mkdir -p ${INSTALL_DIR} ${TARBALL_DIR}
  14. # Run the installation.
  15. cd ${BUILD_DIR}
  16. echo "Running make install ${INSTALL_OPTIONS}..."
  17. if ${MAKE} install ${INSTALL_OPTIONS} > ${LOG_DIR}/make_install.log 2>&1 ; then : ; else
  18. echo "Error, see ${LOG_DIR}/make_install.log"
  19. exit 1
  20. fi
  21. # Strip the executables.
  22. echo "Stripping executables..."
  23. if ${STRIP} ${INSTALL_DIR}${PREFIX}/bin/* \
  24. > ${LOG_DIR}/strip.log 2>&1 ; then : ; else
  25. echo "Error, see ${LOG_DIR}/strip.log"
  26. exit 1
  27. fi
  28. # Let the configuration file add some files.
  29. CreateExtraFiles
  30. # Create the manifest file.
  31. echo "Writing MANIFEST..."
  32. ${MKDIR} -p ${INSTALL_DIR}${PREFIX}${DOC_DIR}
  33. ${TOUCH} ${INSTALL_DIR}${PREFIX}${DOC_DIR}/MANIFEST
  34. cd ${INSTALL_DIR}${PREFIX}
  35. FILES=`${FIND} ${INSTALL_SUBDIRS} -type f |sed 's/^\.\///'`
  36. ${CAT} >> ${INSTALL_DIR}${PREFIX}${DOC_DIR}/MANIFEST <<EOF
  37. ${FILES}
  38. EOF
  39. # Allow the configuration to create package files if it wants to do so.
  40. CreatePackage
  41. # Create the release tarballs.
  42. INTERNAL_NAME="cmake-$VERSION-$PLATFORM-files"
  43. echo "Creating ${INTERNAL_NAME}.tar"
  44. cd ${INSTALL_DIR}${PREFIX}
  45. if ${TAR} cvf ${INSTALL_DIR}/${INTERNAL_NAME}.tar ${INSTALL_SUBDIRS} \
  46. > ${LOG_DIR}/${INTERNAL_NAME}.log 2>&1 ; then : ; else
  47. echo "Error, see ${LOG_DIR}/${INTERNAL_NAME}.log"
  48. exit 1
  49. fi
  50. echo "Writing README"
  51. cd ${INSTALL_DIR}
  52. ${CAT} >> README <<EOF
  53. CMake $VERSION binary for $PLATFORM
  54. Extract the file "${INTERNAL_NAME}.tar" into your
  55. destination directory. The following files will be extracted:
  56. ${FILES}
  57. EOF
  58. TARBALL="${TARBALL_DIR}/CMake$VERSION-$PLATFORM.tar"
  59. echo "Creating CMake$VERSION-$PLATFORM.tar"
  60. if ${TAR} cvf $TARBALL README ${INTERNAL_NAME}.tar \
  61. > ${LOG_DIR}/CMake$VERSION-$PLATFORM.log 2>&1 ; then : ; else
  62. "Error, see ${LOG_DIR}/CMake$VERSION-$PLATFORM.log"
  63. exit 1
  64. fi
  65. if test "x${GZIP}" != "x" ; then
  66. echo "Creating $TARBALL.gz"
  67. ${GZIP} -c $TARBALL > $TARBALL.gz
  68. fi
  69. if test "x${COMPRESS}" != "x" ; then
  70. echo "Creating $TARBALL.Z"
  71. ${COMPRESS} $TARBALL
  72. fi