1
0
Fork 0

Improve MacOS build, faster, more stable at least a bit less complex. (#4507)

This commit is contained in:
Michael Hackstein 2018-02-06 15:45:39 +01:00 committed by GitHub
parent 97e2a9d968
commit 8626f96a4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 28 additions and 34 deletions

View File

@ -1,6 +1,7 @@
#!/bin/bash
WD=$(dirname "$0")
ROOTDIR=$(cd "$WD" && pwd)
# We are in Contents/MacOS. However everything is located under Contents/Resources
ROOTDIR=$(cd "$WD" && cd "../Resources" && pwd)
# create start script
ARANGOD_CONF_DIR="${HOME}@INC_CPACK_INSTALL_SYSCONFDIR@/"

View File

@ -1,9 +0,0 @@
#!/bin/bash
verb=$1
shift
if test "$verb" == "create"; then
@HDIUTIL_EXECUTABLE@ $verb -megabytes @CMAKE_DMG_SIZE@ $@
else
@HDIUTIL_EXECUTABLE@ $verb $@
fi

View File

@ -37,7 +37,6 @@ install(
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR_ARANGO}/js
REGEX "^.*/eslint" EXCLUDE
REGEX "^.*/.npmignore" EXCLUDE
REGEX "^.*/expect.js$" EXCLUDE
REGEX "^.*/.bin" EXCLUDE
REGEX "^.*/_admin/aardvark/APP/frontend/html/" EXCLUDE
REGEX "^.*/_admin/aardvark/APP/frontend/img/" EXCLUDE

View File

@ -12,35 +12,38 @@ set(CPACK_BUNDLE_ICON "${PROJECT_SOURCE_DIR}/Installation/MacOSX/Bund
configure_file("${PROJECT_SOURCE_DIR}/Installation/MacOSX/Bundle/Info.plist.in" "${CMAKE_CURRENT_BINARY_DIR}/Info.plist")
set(CPACK_BUNDLE_PLIST "${CMAKE_CURRENT_BINARY_DIR}/Info.plist")
set(CPACK_BUNDLE_PREFIX "Contents/MacOS")
set(CPACK_BUNDLE_PREFIX "Contents/Resources")
set(CPACK_BUNDLE_APPLE_CERT_APP "Developer ID Application: ArangoDB GmbH (W7UC4UQXPV)")
set(CPACK_INSTALL_PREFIX "${CPACK_PACKAGE_NAME}.app/${CPACK_BUNDLE_PREFIX}${CMAKE_INSTALL_PREFIX}")
set(INST_USR_LIBDIR "/Library/ArangoDB")
set(CPACK_ARANGO_PID_DIR "/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}/run")
set(CPACK_ARANGO_DATA_DIR "${INST_USR_LIBDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}/lib/arangodb3")
set(CPACK_ARANGO_LOG_DIR "${INST_USR_LIBDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}/log/arangodb3")
set(CPACK_ARANGO_STATE_DIR "${INST_USR_LIBDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}")
set(SYSTEM_STATE_DIR "/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}")
set(CPACK_ARANGO_PID_DIR "/${SYSTEM_STATE_DIR}/run")
set(CPACK_INSTALL_SYSCONFDIR "/Library/ArangoDB-${CMAKE_INSTALL_SYSCONFDIR}")
set(CPACK_INSTALL_FULL_SYSCONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO}")
set(CPACK_ARANGODB_APPS_DIRECTORY "${INST_USR_LIBDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}/lib/arangodb3-apps")
to_native_path("CPACK_ARANGODB_APPS_DIRECTORY")
to_native_path("CMAKE_INSTALL_DATAROOTDIR_ARANGO")
to_native_path("CPACK_INSTALL_SYSCONFDIR")
to_native_path("CPACK_ARANGO_PID_DIR")
to_native_path("CPACK_ARANGO_DATA_DIR")
to_native_path("CPACK_ARANGO_STATE_DIR")
to_native_path("CPACK_ARANGO_LOG_DIR")
to_native_path("CPACK_INSTALL_FULL_SYSCONFDIR")
# we wrap HDIUTIL to inject our own parameter:
find_program(HDIUTIL_EXECUTABLE hdiutil)
# for now 500MB seems to be enough:
set(CMAKE_DMG_SIZE 500)
configure_file("${PROJECT_SOURCE_DIR}/Installation/MacOSX/Bundle/hdiutilwrapper.sh.in"
"${CMAKE_CURRENT_BINARY_DIR}/hdiutilwrapper.sh"
@ONLY)
set(CPACK_COMMAND_HDIUTIL "${CMAKE_CURRENT_BINARY_DIR}/hdiutilwrapper.sh")
set(CPACK_ARANGO_STATE_DIR "/Library/ArangoDB/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}")
set(CPACK_ARANGO_DATA_DIR "${CPACK_ARANGO_STATE_DIR}/lib/arangodb3")
set(CPACK_ARANGO_LOG_DIR "${CPACK_ARANGO_STATE_DIR}/log/arangodb3")
set(CPACK_ARANGODB_APPS_DIRECTORY "${CPACK_ARANGO_STATE_DIR}/lib/arangodb3-apps")
# The Following lines are needed to create the paths used in the initial script.
# Create INC_CPACK_ARANGODB_APPS_DIRECTORY
to_native_path("CPACK_ARANGODB_APPS_DIRECTORY")
# Create INC_CMAKE_INSTALL_DATAROOTDIR_ARANGO
to_native_path("CMAKE_INSTALL_DATAROOTDIR_ARANGO")
# Create INC_CPACK_INSTALL_SYSCONFDIR
to_native_path("CPACK_INSTALL_SYSCONFDIR")
# Create INC_CPACK_ARANGO_PID_DIR
to_native_path("CPACK_ARANGO_PID_DIR")
# Create INC_CPACK_ARANGO_DATA_DIR
to_native_path("CPACK_ARANGO_DATA_DIR")
# Create INC_CPACK_ARANGO_STATE_DIR
to_native_path("CPACK_ARANGO_STATE_DIR")
# Create INC_CPACK_ARANGO_LOG_DIR
to_native_path("CPACK_ARANGO_LOG_DIR")
# Create INC_CPACK_INSTALL_FULL_SYSCONFDIR
to_native_path("CPACK_INSTALL_FULL_SYSCONFDIR")
configure_file("${PROJECT_SOURCE_DIR}/Installation/MacOSX/Bundle/arangodb-cli.sh.in"