mirror of https://gitee.com/bigwinds/arangodb
Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache
This commit is contained in:
commit
d7b2141da0
|
@ -74,6 +74,8 @@ if (USE_PRECOMPILED_V8)
|
|||
)
|
||||
else ()
|
||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/V8)
|
||||
set(ICU_DT "${ICU_DT}" PARENT_SCOPE)
|
||||
set(ICU_DT_DEST "${ICU_DT_DEST}" PARENT_SCOPE)
|
||||
endif ()
|
||||
|
||||
################################################################################
|
||||
|
|
|
@ -103,7 +103,86 @@ set(V8_INCLUDE_DIR
|
|||
)
|
||||
|
||||
|
||||
if (${CMAKE_GENERATOR} MATCHES "Ninja")
|
||||
|
||||
################################################################################
|
||||
## WINDOWS & NINJA
|
||||
################################################################################
|
||||
if (WIN32 AND ${CMAKE_GENERATOR} MATCHES "Ninja")
|
||||
message(STATUS "using generator NINJA on Windows! Still WIP be patient!")
|
||||
set(GYP_MAIN ${V8_DIR}/build/gyp_v8)
|
||||
|
||||
# try to find 2013 in 'Visual Studio 12 2013 Win64'
|
||||
#if (${CMAKE_GENERATOR} MATCHES "2013")
|
||||
# list(APPEND V8_GYP_ARGS "-G msvs_version=2013")
|
||||
#endif()
|
||||
|
||||
# try to find 2015 in 'Visual Studio 14 2015 Win64'
|
||||
#if (${CMAKE_GENERATOR} MATCHES "2015")
|
||||
# list(APPEND V8_GYP_ARGS "-G msvs_version=2015")
|
||||
list(APPEND V8_GYP_ARGS --format ninja)
|
||||
#endif()
|
||||
|
||||
if ("${BITS}" STREQUAL "64")
|
||||
set(MS_TARGET_PLATFORM x64)
|
||||
else ()
|
||||
set(MS_TARGET_PLATFORM Win32)
|
||||
endif ()
|
||||
|
||||
list(APPEND V8_GYP_ARGS -Dtarget_arch=${V8_PROC_ARCH} -Dhost_arch=${V8_PROC_ARCH})
|
||||
list(APPEND V8_GYP_ARGS ${V8_DIR}/build/all.gyp)
|
||||
|
||||
if ("${V8_TARGET_ARCHS}" STREQUAL "")
|
||||
set(V8_TARGET_ARCHS "Debug;Release" CACHE string "V8 targets to build")
|
||||
endif()
|
||||
list(APPEND V8_GYP_ARGS
|
||||
-Dcomponent=static_library
|
||||
-Dlibrary=static_library
|
||||
#--depth=2
|
||||
#-Dv8_use_external_startup_data=1
|
||||
#-Dicu_gyp_path=../third_party/icu/icu.gyp
|
||||
#-Dv8_optimized_debug=0
|
||||
#-Dos_posix=0
|
||||
#-Dclang=0
|
||||
#-Dwant_separate_host_toolset=0
|
||||
)
|
||||
|
||||
add_custom_target(v8_build_ninja)
|
||||
|
||||
set(NINJA_BUILD_DIR "${V8_TARGET_DIR}/${NINJA_TARGET}")
|
||||
|
||||
ExternalProject_Add(v8_build_ninja
|
||||
SOURCE_DIR
|
||||
"${V8_DIR}"
|
||||
CONFIGURE_COMMAND
|
||||
${PYTHON_EXECUTABLE} ${GYP_MAIN} ${V8_GYP_ARGS}
|
||||
BINARY_DIR
|
||||
${NINJA_BUILD_DIR}
|
||||
BUILD_COMMAND
|
||||
${CMAKE_BUILD_TOOL} v8
|
||||
STEP_TARGETS
|
||||
v8_base v8_libbase v8_libplatform v8_nosnapshot icui18n icuuc icudata
|
||||
INSTALL_COMMAND
|
||||
"")
|
||||
|
||||
list(APPEND LINK_DIRECTORIES "${NINJA_BUILD_DIR}/obj/tools/gyp")
|
||||
|
||||
set(V8_LIBS
|
||||
"v8_base;v8_libbase;v8_libplatform;v8_nosnapshot"
|
||||
CACHE INTERNAL
|
||||
"${PROJECT_NAME}: Libraries"
|
||||
)
|
||||
|
||||
list(APPEND LINK_DIRECTORIES "${NINJA_BUILD_DIR}/obj/third_party/icu")
|
||||
|
||||
set(ICU_LIBS
|
||||
"icui18n;icuuc;icudata"
|
||||
CACHE INTERNAL
|
||||
"ICU: Libraries"
|
||||
)
|
||||
|
||||
set(LINK_DIRECTORIES "${LINK_DIRECTORIES}" PARENT_SCOPE)
|
||||
|
||||
elseif (${CMAKE_GENERATOR} MATCHES "Ninja")
|
||||
message(STATUS "using generator NINJA!")
|
||||
|
||||
option(USE_DEBUG_V8 "compile V8 in DEBUG mode" OFF)
|
||||
|
@ -186,10 +265,11 @@ if (${CMAKE_GENERATOR} MATCHES "Ninja")
|
|||
set(LINK_DIRECTORIES "${LINK_DIRECTORIES}" PARENT_SCOPE)
|
||||
|
||||
################################################################################
|
||||
## WINDOWS
|
||||
## WINDOWS with msbuild
|
||||
################################################################################
|
||||
|
||||
elseif (WIN32)
|
||||
MESSAGE("Building V8 for Windows with MSBUILD")
|
||||
set(GYP_MAIN ${V8_DIR}/build/gyp_v8)
|
||||
|
||||
# try to find 2013 in 'Visual Studio 12 2013 Win64'
|
||||
|
@ -478,8 +558,8 @@ else ()
|
|||
endif()
|
||||
|
||||
if (WIN32)
|
||||
set(ICU_DT "${ICU_BASEDIR}/data/in/icudtl.dat")
|
||||
set(ICU_DT_DEST "icudt${ICU_COMPACT_VERSION}l.dat")
|
||||
set(ICU_DT "${ICU_BASEDIR}/data/in/icudtl.dat" PARENT_SCOPE)
|
||||
set(ICU_DT_DEST "icudt${ICU_COMPACT_VERSION}l.dat" PARENT_SCOPE)
|
||||
# other platforms link the file into the binary
|
||||
install(FILES ${ICU_DT}
|
||||
DESTINATION "share/arangodb/"
|
||||
|
|
|
@ -52,6 +52,15 @@ v3.0.5 (XXXX-XX-XX)
|
|||
|
||||
* fix SSL agency endpoint
|
||||
|
||||
* Minimum RAFT timeout was one order of magnitude to short.
|
||||
|
||||
* Optimized RAFT RPCs from leader to followers for efficiency.
|
||||
|
||||
* Optimized RAFT RPC handling on followers with respect to compaction.
|
||||
|
||||
* Fixed bug in handling of duplicates and overlapping logs
|
||||
|
||||
* Fixed bug in supervision take over after leadership change.
|
||||
|
||||
v3.0.4 (2016-08-01)
|
||||
-------------------
|
||||
|
|
|
@ -37,29 +37,29 @@
|
|||
<li>
|
||||
<a href="#" data-book="cookbook">Cookbook</a>
|
||||
</li>
|
||||
<li class="downloadIcon">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank" name="download">
|
||||
<i title="Download" class="fa fa-download"></i>
|
||||
<li class="downloadIcon" title="Download">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank">
|
||||
<i class="fa fa-download"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank" name="github">
|
||||
<i title="GitHub" class="fa fa-github"></i>
|
||||
<li class="socialIcons" title="GitHub">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank">
|
||||
<i class="fa fa-github"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank" name="stackoverflow">
|
||||
<i title="StackOverflow" class="fa fa-stack-overflow"></i>
|
||||
<li class="socialIcons" title="StackOverflow">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank">
|
||||
<i class="fa fa-stack-overflow"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons socialIcons-googlegroups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank" name="google groups">
|
||||
<img title="Google Groups" alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
<li class="socialIcons socialIcons-googlegroups" title="Google Groups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank">
|
||||
<img alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://slack.arangodb.com" target="_blank" name="slack">
|
||||
<i title="Slack" class="fa fa-slack"></i>
|
||||
<li class="socialIcons" title="Slack">
|
||||
<a href="https://slack.arangodb.com" target="_blank">
|
||||
<i class="fa fa-slack"></i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -37,29 +37,29 @@
|
|||
<li>
|
||||
<a href="#" data-book="cookbook">Cookbook</a>
|
||||
</li>
|
||||
<li class="downloadIcon">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank" name="download">
|
||||
<i title="Download" class="fa fa-download"></i>
|
||||
<li class="downloadIcon" title="Download">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank">
|
||||
<i class="fa fa-download"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank" name="github">
|
||||
<i title="GitHub" class="fa fa-github"></i>
|
||||
<li class="socialIcons" title="GitHub">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank">
|
||||
<i class="fa fa-github"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank" name="stackoverflow">
|
||||
<i title="StackOverflow" class="fa fa-stack-overflow"></i>
|
||||
<li class="socialIcons" title="StackOverflow">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank">
|
||||
<i class="fa fa-stack-overflow"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons socialIcons-googlegroups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank" name="google groups">
|
||||
<img title="Google Groups" alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
<li class="socialIcons socialIcons-googlegroups" title="Google Groups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank">
|
||||
<img alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://slack.arangodb.com" target="_blank" name="slack">
|
||||
<i title="Slack" class="fa fa-slack"></i>
|
||||
<li class="socialIcons" title="Slack">
|
||||
<a href="https://slack.arangodb.com" target="_blank">
|
||||
<i class="fa fa-slack"></i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -37,29 +37,29 @@
|
|||
<li>
|
||||
<a href="#" data-book="cookbook">Cookbook</a>
|
||||
</li>
|
||||
<li class="downloadIcon">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank" name="download">
|
||||
<i title="Download" class="fa fa-download"></i>
|
||||
<li class="downloadIcon" title="Download">
|
||||
<a href="https://www.arangodb.com/download-arangodb-docs" target="_blank">
|
||||
<i class="fa fa-download"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank" name="github">
|
||||
<i title="GitHub" class="fa fa-github"></i>
|
||||
<li class="socialIcons" title="GitHub">
|
||||
<a href="https://github.com/ArangoDB/ArangoDB/issues" target="_blank">
|
||||
<i class="fa fa-github"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank" name="stackoverflow">
|
||||
<i title="StackOverflow" class="fa fa-stack-overflow"></i>
|
||||
<li class="socialIcons" title="StackOverflow">
|
||||
<a href="http://stackoverflow.com/questions/tagged/arangodb" target="_blank">
|
||||
<i class="fa fa-stack-overflow"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons socialIcons-googlegroups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank" name="google groups">
|
||||
<img title="Google Groups" alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
<li class="socialIcons socialIcons-googlegroups" title="Google Groups">
|
||||
<a href="https://groups.google.com/forum/#!forum/arangodb" target="_blank">
|
||||
<img alt="Google Groups" src="https://docs.arangodb.com/assets/googlegroupsIcon.png" />
|
||||
</a>
|
||||
</li>
|
||||
<li class="socialIcons">
|
||||
<a href="https://slack.arangodb.com" target="_blank" name="slack">
|
||||
<i title="Slack" class="fa fa-slack"></i>
|
||||
<li class="socialIcons" title="Slack">
|
||||
<a href="https://slack.arangodb.com" target="_blank">
|
||||
<i class="fa fa-slack"></i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
!CHAPTER Fulltext indexes
|
||||
|
||||
!SUBSECTION Introduction to Fulltext Indexes
|
||||
|
||||
This is an introduction to ArangoDB's fulltext indexes.
|
||||
|
||||
!SUBSECTION Introduction to Fulltext Indexes
|
||||
|
||||
A fulltext index can be used to find words, or prefixes of words inside documents.
|
||||
|
||||
A fulltext index can be defined on one attribute only, and will include all words contained in
|
||||
|
@ -46,6 +46,7 @@ Other data types are ignored and not indexed.
|
|||
<!-- js/server/modules/@arangodb/arango-collection.js -->
|
||||
|
||||
Ensures that a fulltext index exists:
|
||||
|
||||
`collection.ensureIndex({ type: "fulltext", fields: [ "field" ], minLength: minLength })`
|
||||
|
||||
Creates a fulltext index on all documents on attribute *field*.
|
||||
|
@ -84,6 +85,7 @@ details is returned.
|
|||
|
||||
|
||||
Looks up a fulltext index:
|
||||
|
||||
`collection.lookupFulltextIndex(attribute, minLength)`
|
||||
|
||||
Checks whether a fulltext index on the given attribute *attribute* exists.
|
||||
|
|
|
@ -36,6 +36,49 @@ case `uname -m` in
|
|||
;;
|
||||
esac
|
||||
|
||||
compute_relative()
|
||||
{
|
||||
# http://stackoverflow.com/questions/2564634/convert-absolute-path-into-relative-path-given-a-current-directory-using-bash
|
||||
# both $1 and $2 are absolute paths beginning with /
|
||||
# returns relative path to $2/$target from $1/$source
|
||||
source=$1
|
||||
target=$2
|
||||
|
||||
common_part=$source # for now
|
||||
result="" # for now
|
||||
|
||||
while [[ "${target#$common_part}" == "${target}" ]]; do
|
||||
# no match, means that candidate common part is not correct
|
||||
# go up one level (reduce common part)
|
||||
common_part="$(dirname $common_part)"
|
||||
# and record that we went back, with correct / handling
|
||||
if [[ -z $result ]]; then
|
||||
result=".."
|
||||
else
|
||||
result="../$result"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ $common_part == "/" ]]; then
|
||||
# special case for root (no common path)
|
||||
result="$result/"
|
||||
fi
|
||||
|
||||
# since we now have identified the common part,
|
||||
# compute the non-common part
|
||||
forward_part="${target#$common_part}"
|
||||
|
||||
# and now stick all parts together
|
||||
if [[ -n $result ]] && [[ -n $forward_part ]]; then
|
||||
result="$result$forward_part"
|
||||
elif [[ -n $forward_part ]]; then
|
||||
# extra slash removal
|
||||
result="${forward_part:1}"
|
||||
fi
|
||||
|
||||
echo $result
|
||||
}
|
||||
|
||||
# check if there are any relevant changes to the source code
|
||||
|
||||
LASTREV=""
|
||||
|
@ -79,7 +122,8 @@ MAKE=make
|
|||
PACKAGE_MAKE=make
|
||||
MAKE_PARAMS=""
|
||||
MAKE_CMD_PREFIX=""
|
||||
CONFIGURE_OPTIONS="-DCMAKE_INSTALL_PREFIX=/ -DCMAKE_INSTALL_LOCALSTATEDIR=/var$CMAKE_OPENSSL"
|
||||
CONFIGURE_OPTIONS="-DCMAKE_INSTALL_PREFIX=/ $CMAKE_OPENSSL"
|
||||
# -DCMAKE_INSTALL_LOCALSTATEDIR=/var"
|
||||
MAINTAINER_MODE="-DUSE_MAINTAINER_MODE=off"
|
||||
|
||||
TARGET_DIR=""
|
||||
|
@ -164,7 +208,7 @@ while [ $# -gt 0 ]; do
|
|||
shift
|
||||
;;
|
||||
|
||||
--msvc)
|
||||
--msvc)
|
||||
shift
|
||||
MSVC=1
|
||||
CC=""
|
||||
|
@ -193,7 +237,7 @@ while [ $# -gt 0 ]; do
|
|||
shift
|
||||
;;
|
||||
|
||||
--builddir)
|
||||
--buildDir)
|
||||
shift
|
||||
BUILD_DIR=$1
|
||||
shift
|
||||
|
@ -233,6 +277,12 @@ while [ $# -gt 0 ]; do
|
|||
V8_LDFLAGS="${V8_LDFLAGS} -static-libgcc -static-libstdc++"
|
||||
shift
|
||||
;;
|
||||
|
||||
--parallel)
|
||||
shift
|
||||
PARALLEL_BUILDS=$1
|
||||
shift
|
||||
;;
|
||||
|
||||
--targetDir)
|
||||
shift
|
||||
|
@ -333,16 +383,21 @@ if test ${CLEAN_IT} -eq 1; then
|
|||
git clean -f -d -x
|
||||
fi
|
||||
|
||||
SRC=`pwd`
|
||||
|
||||
test -d ${BUILD_DIR} || mkdir ${BUILD_DIR}
|
||||
cd ${BUILD_DIR}
|
||||
|
||||
DST=`pwd`
|
||||
SOURCE_DIR=`compute_relative ${DST}/ ${SRC}/`
|
||||
|
||||
if [ ! -f Makefile -o ! -f CMakeCache.txt ]; then
|
||||
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \
|
||||
cmake .. ${CONFIGURE_OPTIONS} -G "${GENERATOR}"
|
||||
cmake ${SOURCE_DIR} ${CONFIGURE_OPTIONS} -G "${GENERATOR}"
|
||||
fi
|
||||
|
||||
${MAKE_CMD_PREFIX} ${MAKE} ${MAKE_PARAMS}
|
||||
git rev-parse HEAD > ../last_compiled_version.sha
|
||||
(cd ${SOURCE_DIR}; git rev-parse HEAD > last_compiled_version.sha)
|
||||
|
||||
if [ -n "$CPACK" -a -n "${TARGET_DIR}" ]; then
|
||||
${PACKAGE_MAKE} packages
|
||||
|
@ -380,7 +435,7 @@ if test -n "${TARGET_DIR}"; then
|
|||
mkdir -p ${dir}
|
||||
trap "rm -rf ${TARFILE_TMP}" EXIT
|
||||
|
||||
(cd ..
|
||||
(cd ${SOURCE_DIR}
|
||||
|
||||
touch 3rdParty/.keepme
|
||||
touch arangod/.keepme
|
||||
|
@ -403,7 +458,7 @@ if test -n "${TARGET_DIR}"; then
|
|||
tar -u -f ${TARFILE_TMP} \
|
||||
--files-from files.$$
|
||||
|
||||
(cd ..
|
||||
(cd ${SOURCE_DIR}
|
||||
|
||||
find . \
|
||||
\( -name *.cpp -o -name *.h -o -name *.c -o -name *.hpp -o -name *.ll -o -name *.y \) > files.$$
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
[Settings]
|
||||
NumFields=4
|
||||
|
||||
[Field 1]
|
||||
Type=label
|
||||
Text=By default @CPACK_PACKAGE_INSTALL_DIRECTORY@ does not add its directory to the system PATH.
|
||||
Left=0
|
||||
Right=-1
|
||||
Top=0
|
||||
Bottom=20
|
||||
|
||||
[Field 2]
|
||||
Type=radiobutton
|
||||
Text=for all users
|
||||
Left=5
|
||||
Right=-1
|
||||
Top=40
|
||||
Bottom=50
|
||||
State=0
|
||||
|
||||
[Field 3]
|
||||
Type=radiobutton
|
||||
Text=for the current user
|
||||
Left=5
|
||||
Right=-1
|
||||
Top=50
|
||||
Bottom=60
|
||||
State=0
|
||||
|
||||
[Field 4]
|
||||
Type=CheckBox
|
||||
Text=Create @CPACK_PACKAGE_NAME@ Desktop Icon
|
||||
Left=160
|
||||
Right=-1
|
||||
Top=120
|
||||
Bottom=130
|
||||
State=1
|
||||
|
||||
[Field 4]
|
||||
Type=label
|
||||
Text=Install @CPACK_PACKAGE_NAME@
|
||||
Left=0
|
||||
Right=-1
|
||||
Top=20
|
||||
Bottom=29
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,59 @@
|
|||
; arango-packer-template.nsi
|
||||
;
|
||||
; this script copies the installation program
|
||||
; for arango and the corresponding window runtime
|
||||
; libraries which the arango installation program needs
|
||||
;
|
||||
; The installation program and the runtimes are
|
||||
; copied to the TEMP directory and then the arango
|
||||
; installer is started
|
||||
;--------------------------------
|
||||
|
||||
; !include "Library.nsh"
|
||||
|
||||
; The name of the installer
|
||||
Name "@INSTALLERNAME@"
|
||||
|
||||
; The file to write
|
||||
OutFile "@INSTALLERNAME@.exe"
|
||||
|
||||
; The default installation directory
|
||||
!define APPNAME "Unpacker"
|
||||
!define COMPANYNAME "ArangoDB"
|
||||
InstallDir $TEMP\${COMPANYNAME}\${APPNAME}
|
||||
|
||||
|
||||
|
||||
; Request application privileges for Windows Vista
|
||||
RequestExecutionLevel user
|
||||
|
||||
;--------------------------------
|
||||
|
||||
; Pages
|
||||
Page instfiles
|
||||
|
||||
;--------------------------------
|
||||
|
||||
; The stuff to install
|
||||
Section "" ;No components page, name is not important
|
||||
|
||||
; Set output path to the installation directory.
|
||||
SetOutPath $INSTDIR
|
||||
|
||||
; examinates if installation program exists and it is running
|
||||
IfFileExists "$INSTDIR\@INSTALLERNAME@-internal.exe" 0 install_files
|
||||
Fileopen $0 "$INSTDIR\@INSTALLERNAME@-internal.exe" "w"
|
||||
IfErrors 0 install_files
|
||||
MessageBox MB_OK "@INSTALLERNAME@ is already runing"
|
||||
Quit
|
||||
; files are copied
|
||||
install_files:
|
||||
FileClose $0
|
||||
; Put file there
|
||||
|
||||
; Set output path to the installation directory.
|
||||
SetOutPath $INSTDIR
|
||||
; Put file there
|
||||
Quit
|
||||
|
||||
SectionEnd ; end the section
|
|
@ -375,6 +375,7 @@ void Supervision::handleShutdown() {
|
|||
}
|
||||
LOG_TOPIC(DEBUG, Logger::AGENCY)
|
||||
<< "Waiting for " << server.first << " to shutdown";
|
||||
serversCleared = false;
|
||||
}
|
||||
|
||||
if (serversCleared) {
|
||||
|
|
|
@ -355,7 +355,7 @@ target_link_libraries(${BIN_ARANGOD}
|
|||
|
||||
install(
|
||||
TARGETS ${BIN_ARANGOD}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_SBINDIR})
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_SBINDIR})
|
||||
|
||||
install_config(arangod)
|
||||
|
||||
|
@ -370,7 +370,7 @@ endif ()
|
|||
################################################################################
|
||||
|
||||
install_command_alias(${BIN_ARANGOD}
|
||||
${CMAKE_INSTALL_FULL_SBINDIR}
|
||||
${CMAKE_INSTALL_SBINDIR}
|
||||
arango-dfdb)
|
||||
|
||||
install_config(arango-dfdb)
|
||||
|
@ -380,7 +380,7 @@ install_config(arango-dfdb)
|
|||
################################################################################
|
||||
|
||||
install_command_alias(${BIN_ARANGOD}
|
||||
${CMAKE_INSTALL_FULL_SBINDIR}
|
||||
${CMAKE_INSTALL_SBINDIR}
|
||||
arango-secure-installation)
|
||||
|
||||
install_config(arango-secure-installation)
|
||||
|
@ -390,7 +390,7 @@ install_config(arango-secure-installation)
|
|||
################################################################################
|
||||
|
||||
install_command_alias(${BIN_ARANGOD}
|
||||
${CMAKE_INSTALL_FULL_SBINDIR}
|
||||
${CMAKE_INSTALL_SBINDIR}
|
||||
arango-init-database)
|
||||
|
||||
install_config(arango-init-database)
|
||||
|
|
|
@ -30,7 +30,6 @@
|
|||
#include "Cluster/ClusterInfo.h"
|
||||
#include "Cluster/ServerState.h"
|
||||
#include "Dispatcher/DispatcherThread.h"
|
||||
//#include "Rest/FakeRequest.h"
|
||||
#include "SimpleHttpClient/ConnectionManager.h"
|
||||
#include "SimpleHttpClient/SimpleHttpClient.h"
|
||||
#include "Utils/Transaction.h"
|
||||
|
@ -1344,8 +1343,17 @@ size_t ClusterComm::performSingleRequest(
|
|||
req.requestType, req.path, *(req.body),
|
||||
*(req.headerFields), timeout);
|
||||
}
|
||||
|
||||
std::unordered_map<std::string, std::string> headers;
|
||||
// mop: helpless attempt to fix segfaulting due to body buffer empty
|
||||
if (req.result.status == CL_COMM_BACKEND_UNAVAILABLE) {
|
||||
THROW_ARANGO_EXCEPTION(TRI_ERROR_CLUSTER_BACKEND_UNAVAILABLE);
|
||||
}
|
||||
|
||||
// Add correct recognition of content type later.
|
||||
req.result.status = CL_COMM_RECEIVED; // a fake, but a good one
|
||||
req.done = true;
|
||||
headers = req.result.result->getHeaderFields();
|
||||
nrDone = 1;
|
||||
// This was it, except for a small problem: syncRequest reports back in
|
||||
// req.result.result of type httpclient::SimpleHttpResult rather than
|
||||
|
@ -1353,9 +1361,8 @@ size_t ClusterComm::performSingleRequest(
|
|||
// Additionally, GeneralRequest is a virtual base class, so we actually
|
||||
// have to create an HttpRequest instance:
|
||||
GeneralRequest::ContentType type = GeneralRequest::ContentType::JSON;
|
||||
// Add correct recognition of content type later.
|
||||
|
||||
basics::StringBuffer& buffer = req.result.result->getBody();
|
||||
|
||||
// auto answer = new FakeRequest(type, buffer.c_str(),
|
||||
// static_cast<int64_t>(buffer.length()));
|
||||
// answer->setHeaders(req.result.result->getHeaderFields());
|
||||
|
@ -1363,7 +1370,7 @@ size_t ClusterComm::performSingleRequest(
|
|||
auto answer = HttpRequest::createFakeRequest(
|
||||
type, buffer.c_str(), static_cast<int64_t>(buffer.length()),
|
||||
req.result.result->getHeaderFields());
|
||||
|
||||
|
||||
req.result.answer.reset(static_cast<GeneralRequest*>(answer));
|
||||
req.result.answer_code = static_cast<GeneralResponse::ResponseCode>(
|
||||
req.result.result->getHttpReturnCode());
|
||||
|
|
|
@ -3,36 +3,36 @@
|
|||
# we can't use RUNTIME DESTINATION here.
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOBENCH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOBENCH}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
install_config(arangobench)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGODUMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGODUMP}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
install_config(arangodump)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOIMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOIMP}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
install_config(arangoimp)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGORESTORE}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGORESTORE}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
install_config(arangorestore)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOSH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOSH}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
install_config(arangosh)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOVPACK}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOVPACK}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
||||
install_command_alias(${BIN_ARANGOSH}
|
||||
${CMAKE_INSTALL_FULL_BINDIR}
|
||||
${CMAKE_INSTALL_BINDIR}
|
||||
foxx-manager)
|
||||
install_config(foxx-manager)
|
||||
|
||||
|
|
|
@ -1,15 +1,20 @@
|
|||
include(GNUInstallDirs)
|
||||
|
||||
set(ARANGODB_SOURCE_DIR ${CMAKE_SOURCE_DIR})
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3")
|
||||
|
||||
set(CMAKE_INSTALL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_DATAROOTDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_FULL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_FULL_DATAROOTDIR}/arangodb3")
|
||||
|
||||
if (MSVC OR DARWIN)
|
||||
set(ENABLE_UID_CFG false)
|
||||
else ()
|
||||
set(ENABLE_UID_CFG true)
|
||||
endif ()
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3")
|
||||
|
||||
file(TO_NATIVE_PATH "${CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO}" ETCDIR_NATIVE)
|
||||
STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ETCDIR_ESCAPED "${ETCDIR_NATIVE}")
|
||||
|
@ -49,7 +54,7 @@ include(InstallArangoDBJSClient)
|
|||
################################################################################
|
||||
|
||||
install(
|
||||
DIRECTORY ${PROJECT_SOURCE_DIR}/js/actions ${PROJECT_SOURCE_DIR}/js/apps ${PROJECT_SOURCE_DIR}/js/contrib ${PROJECT_SOURCE_DIR}/js/node ${PROJECT_SOURCE_DIR}/js/server
|
||||
DIRECTORY ${PROJECT_SOURCE_DIR}/js/actions ${PROJECT_SOURCE_DIR}/js/apps ${PROJECT_SOURCE_DIR}/js/contrib ${PROJECT_SOURCE_DIR}/js/server
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR_ARANGO}/js
|
||||
REGEX "^.*/server/tests$" EXCLUDE
|
||||
REGEX "^.*/aardvark/APP/node_modules$" EXCLUDE
|
||||
|
@ -61,7 +66,7 @@ install(
|
|||
|
||||
install(
|
||||
DIRECTORY ${PROJECT_BINARY_DIR}/var/log/arangodb3
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log)
|
||||
DESTINATION ${CMAKE_INSTALL_LOCALSTATEDIR}/log)
|
||||
|
||||
################################################################################
|
||||
### @brief install database directory
|
||||
|
@ -69,7 +74,7 @@ install(
|
|||
|
||||
install(
|
||||
DIRECTORY ${PROJECT_BINARY_DIR}/var/lib/arangodb3
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib)
|
||||
DESTINATION ${CMAKE_INSTALL_LOCALSTATEDIR}/lib)
|
||||
|
||||
################################################################################
|
||||
### @brief install apps directory
|
||||
|
@ -77,7 +82,7 @@ install(
|
|||
|
||||
install(
|
||||
DIRECTORY ${PROJECT_BINARY_DIR}/var/lib/arangodb3-apps
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib)
|
||||
DESTINATION ${CMAKE_INSTALL_LOCALSTATEDIR}/lib)
|
||||
|
||||
|
||||
# sub directories --------------------------------------------------------------
|
||||
|
|
|
@ -9,3 +9,9 @@ install(
|
|||
REGEX "^.*/common/test-data$" EXCLUDE
|
||||
REGEX "^.*/common/tests$" EXCLUDE
|
||||
REGEX "^.*/client/tests$" EXCLUDE)
|
||||
|
||||
# For the node modules we need all files:
|
||||
install(
|
||||
DIRECTORY ${ARANGODB_SOURCE_DIR}/js/node
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR_ARANGO}/js
|
||||
)
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
################################################################################
|
||||
## INSTALL
|
||||
################################################################################
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_FULL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_DATAROOTDIR}/arangodb3" CACHE PATH "read-only data (share)")
|
||||
set(CMAKE_INSTALL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_FULL_DATAROOTDIR}/arangodb3" CACHE PATH "read-only data (share)")
|
||||
if (NOT CMAKE_INSTALL_SYSCONFDIR_ARANGO
|
||||
OR NOT CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO
|
||||
OR NOT CMAKE_INSTALL_DATAROOTDIR_ARANGO
|
||||
OR NOT CMAKE_INSTALL_FULL_DATAROOTDIR_ARANGO)
|
||||
message(FATAL_ERROR, "CMAKE_INSTALL_DATAROOTDIR or CMAKE_INSTALL_SYSCONFDIR not set!")
|
||||
endif()
|
||||
|
||||
# Global macros ----------------------------------------------------------------
|
||||
macro (generate_root_config name)
|
||||
|
@ -89,24 +91,48 @@ macro (install_readme input output)
|
|||
endmacro ()
|
||||
|
||||
# installs a link to an executable ---------------------------------------------
|
||||
macro (install_command_alias name where alias)
|
||||
if (MSVC)
|
||||
add_custom_command(
|
||||
TARGET ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${name}>
|
||||
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}.exe)
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}.exe
|
||||
DESTINATION ${where})
|
||||
else ()
|
||||
add_custom_command(
|
||||
TARGET ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink ${name}
|
||||
if (INSTALL_MACROS_NO_TARGET_INSTALL)
|
||||
macro (install_command_alias name where alias)
|
||||
if (MSVC)
|
||||
add_custom_command(
|
||||
OUTPUT ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${name}>
|
||||
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}${CMAKE_EXECUTABLE_SUFFIX})
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${where})
|
||||
else ()
|
||||
add_custom_command(
|
||||
OUTPUT ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink ${name}
|
||||
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${alias})
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${alias}
|
||||
DESTINATION ${where})
|
||||
endif ()
|
||||
endmacro ()
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${alias}
|
||||
DESTINATION ${where})
|
||||
endif ()
|
||||
endmacro ()
|
||||
else ()
|
||||
macro (install_command_alias name where alias)
|
||||
if (MSVC)
|
||||
add_custom_command(
|
||||
TARGET ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${name}>
|
||||
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}${CMAKE_EXECUTABLE_SUFFIX})
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIGURATION>/${alias}${CMAKE_EXECUTABLE_SUFFIX}
|
||||
DESTINATION ${where})
|
||||
else ()
|
||||
add_custom_command(
|
||||
TARGET ${name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink ${name}
|
||||
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${alias})
|
||||
install(
|
||||
PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${alias}
|
||||
DESTINATION ${where})
|
||||
endif ()
|
||||
endmacro ()
|
||||
endif()
|
||||
|
|
|
@ -8,6 +8,8 @@ cmake_minimum_required(VERSION 2.8)
|
|||
# variables from the main build have to be explicitely forwarded:
|
||||
################################################################################
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "@PROJECT_BINARY_DIR@/bin/")
|
||||
set(CMAKE_INSTALL_BINDIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_X ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
|
||||
################################################################################
|
||||
# Substitute the install binaries:
|
||||
|
@ -71,6 +73,14 @@ set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${AR
|
|||
################################################################################
|
||||
# Install the external files into the package directory:
|
||||
################################################################################
|
||||
include(GNUInstallDirs)
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3" CACHE PATH "read-only single-machine data (etc)")
|
||||
set(CMAKE_INSTALL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_DATAROOTDIR}/arangodb3" CACHE PATH "read-only data (share)")
|
||||
set(CMAKE_INSTALL_FULL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_FULL_DATAROOTDIR}/arangodb3" CACHE PATH "read-only data (share)")
|
||||
|
||||
set(INSTALL_MACROS_NO_TARGET_INSTALL TRUE)
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallMacros.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallArangoDBJSClient.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/arangosh/install.cmake)
|
||||
|
|
|
@ -0,0 +1,172 @@
|
|||
################################################################################
|
||||
# the client package is a complete cmake sub package.
|
||||
################################################################################
|
||||
project(arangodb3-client)
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
################################################################################
|
||||
# variables from the main build have to be explicitely forwarded:
|
||||
################################################################################
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY @CMAKE_BINARY_DIR@/bin)
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_X @CMAKE_BINARY_DIR@/bin/$<CONFIGURATION>/)
|
||||
|
||||
set(CMAKE_BUILD_TYPE @CMAKE_BUILD_TYPE@)
|
||||
|
||||
################################################################################
|
||||
# Substitute the install binaries:
|
||||
################################################################################
|
||||
set(BIN_ARANGOBENCH @BIN_ARANGOBENCH@)
|
||||
set(BIN_ARANGODUMP @BIN_ARANGODUMP@)
|
||||
set(BIN_ARANGOIMP @BIN_ARANGOIMP@)
|
||||
set(BIN_ARANGORESTORE @BIN_ARANGORESTORE@)
|
||||
set(BIN_ARANGOSH @BIN_ARANGOSH@)
|
||||
set(BIN_ARANGOVPACK @BIN_ARANGOVPACK@)
|
||||
|
||||
################################################################################
|
||||
# build specific variables:
|
||||
################################################################################
|
||||
set(ARANGODB_URL_INFO_ABOUT @ARANGODB_URL_INFO_ABOUT@)
|
||||
set(ARANGODB_SOURCE_DIR @ARANGODB_SOURCE_DIR@)
|
||||
set(ARANGODB_VERSION @ARANGODB_VERSION@)
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE @ARANGODB_PACKAGE_ARCHITECTURE@)
|
||||
set(ARANGODB_PACKAGE_CONTACT @ARANGODB_PACKAGE_CONTACT@)
|
||||
set(ARANGODB_PACKAGE_REVISION @ARANGODB_PACKAGE_REVISION@)
|
||||
|
||||
set(CMAKE_INSTALL_FULL_BINDIR @CMAKE_INSTALL_FULL_BINDIR@)
|
||||
set(CMAKE_TARGET_ARCHITECTURES @CMAKE_TARGET_ARCHITECTURES@)
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_SYSCONFDIR_ARANGO@)
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO@)
|
||||
|
||||
set(CMAKE_CL_64 @CMAKE_CL_64@)
|
||||
if (CMAKE_CL_64)
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES64}")
|
||||
SET(BITS 64)
|
||||
else ()
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES}")
|
||||
SET(BITS 32)
|
||||
endif ()
|
||||
|
||||
set(ORIGINAL_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
set(PROJECT_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
|
||||
|
||||
set(LIB_EAY_RELEASE_DLL @LIB_EAY_RELEASE_DLL@)
|
||||
set(SSL_EAY_RELEASE_DLL @SSL_EAY_RELEASE_DLL@)
|
||||
|
||||
set(ICU_DT @ICU_DT@)
|
||||
set(ICU_DT_DEST @ICU_DT_DEST@)
|
||||
|
||||
|
||||
################################################################################
|
||||
# Get the final values for cpack:
|
||||
################################################################################
|
||||
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
||||
set(CPACK_PACKAGE_NAME "arangodb3-client")
|
||||
set(CPACK_PACKAGE_CONTACT ${ARANGODB_PACKAGE_CONTACT})
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
|
||||
|
||||
|
||||
################################################################################
|
||||
# ------------------------------------------------------------------------------
|
||||
################################################################################
|
||||
|
||||
|
||||
# so we don't need to ship dll's twice, make it one directory:
|
||||
set(CMAKE_INSTALL_FULL_SBINDIR "${CMAKE_INSTALL_FULL_BINDIR}")
|
||||
set(W_INSTALL_FILES "${PROJECT_SOURCE_DIR}/Installation/Windows/")
|
||||
set(CPACK_MODULE_PATH "${W_INSTALL_FILES}/client/Templates")
|
||||
set(CPACK_PLUGIN_PATH "${W_INSTALL_FILES}/client/Plugins")
|
||||
set(CPACK_PACKAGE_NAME "ArangoSH")
|
||||
set(CPACK_NSIS_DISPLAY_NAME, ${ARANGODB_DISPLAY_NAME})
|
||||
set(CPACK_NSIS_HELP_LINK ${ARANGODB_HELP_LINK})
|
||||
set(CPACK_NSIS_URL_INFO_ABOUT ${ARANGODB_URL_INFO_ABOUT})
|
||||
set(CPACK_NSIS_CONTACT ${ARANGODB_CONTACT})
|
||||
set(CPACK_NSIS_MODIFY_PATH ON)
|
||||
set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL 1)
|
||||
set(BITS 64)
|
||||
if (CMAKE_CL_64)
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES64}")
|
||||
SET(BITS 64)
|
||||
else ()
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES}")
|
||||
SET(BITS 32)
|
||||
endif ()
|
||||
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/VcMacros.cmake)
|
||||
include(GNUInstallDirs)
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_SYSCONFDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO "${CMAKE_INSTALL_FULL_SYSCONFDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_DATAROOTDIR}/arangodb3")
|
||||
set(CMAKE_INSTALL_FULL_DATAROOTDIR_ARANGO "${CMAKE_INSTALL_FULL_DATAROOTDIR}/arangodb3")
|
||||
|
||||
set(INSTALL_MACROS_NO_TARGET_INSTALL TRUE)
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallMacros.cmake)
|
||||
|
||||
|
||||
# install the visual studio runtime:
|
||||
set(CMAKE_INSTALL_UCRT_LIBRARIES 1)
|
||||
include(InstallRequiredSystemLibraries)
|
||||
INSTALL(FILES ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION bin COMPONENT Libraries)
|
||||
INSTALL(FILES ${CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT} DESTINATION bin COMPONENT Libraries)
|
||||
|
||||
# install openssl
|
||||
if (NOT LIB_EAY_RELEASE_DLL OR NOT SSL_EAY_RELEASE_DLL)
|
||||
message(FATAL_ERROR, "BUNDLE_OPENSSL set but couldn't locate SSL DLLs. Please set LIB_EAY_RELEASE_DLL and SSL_EAY_RELEASE_DLL")
|
||||
endif()
|
||||
|
||||
install (FILES "${LIB_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_BINDIR}/" COMPONENT Libraries)
|
||||
install (FILES "${SSL_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_BINDIR}/" COMPONENT Libraries)
|
||||
|
||||
# icon paths
|
||||
set (ICON_PATH "${W_INSTALL_FILES}/Icons/")
|
||||
install(DIRECTORY "${ICON_PATH}" DESTINATION "resources")
|
||||
|
||||
file(TO_NATIVE_PATH "resources/Icons/arangodb.ico" RELATIVE_ARANGO_ICON)
|
||||
file(TO_NATIVE_PATH "${ICON_PATH}arangodb.bmp" ARANGO_IMG)
|
||||
file(TO_NATIVE_PATH "${ICON_PATH}/arangodb.ico" ARANGO_ICON)
|
||||
|
||||
STRING(REGEX REPLACE "\\\\" "\\\\\\\\" RELATIVE_ARANGO_ICON "${RELATIVE_ARANGO_ICON}")
|
||||
STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ARANGO_IMG "${ARANGO_IMG}")
|
||||
STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ARANGO_ICON "${ARANGO_ICON}")
|
||||
|
||||
set(CPACK_PACKAGE_ICON ${ARANGO_ICON})
|
||||
set(CPACK_NSIS_MUI_ICON ${ARANGO_ICON})
|
||||
set(CPACK_NSIS_MUI_UNIICON ${ARANGO_ICON})
|
||||
set(CPACK_NSIS_INSTALLED_ICON_NAME ${RELATIVE_ARANGO_ICON})
|
||||
|
||||
message(STATUS "RELATIVE_ARANGO_ICON: ${RELATIVE_ARANGO_ICON}")
|
||||
message(STATUS "ARANGO_IMG: ${ARANGO_IMG}")
|
||||
message(STATUS "ARANGO_ICON: ${ARANGO_ICON}")
|
||||
|
||||
# versioning
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${W_INSTALL_FILES}/version")
|
||||
|
||||
include("${W_INSTALL_FILES}/version/generate_product_version.cmake")
|
||||
|
||||
set(CPACK_ARANGODB_NSIS_DEFINES "
|
||||
!define BITS ${BITS}
|
||||
!define TRI_FRIENDLY_SVC_NAME '${ARANGODB_FRIENDLY_STRING}'
|
||||
!define TRI_AARDVARK_URL 'http://127.0.0.1:8529'
|
||||
")
|
||||
|
||||
|
||||
|
||||
################################################################################
|
||||
# Install the external files into the package directory:
|
||||
################################################################################
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallArangoDBJSClient.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/arangosh/install.cmake)
|
||||
|
||||
install_readme(README.windows README.windows.txt)
|
||||
|
||||
# other platforms link the file into the binary
|
||||
install(FILES ${ICU_DT}
|
||||
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/arangodb3"
|
||||
RENAME ${ICU_DT_DEST})
|
||||
|
||||
include(CPack)
|
|
@ -1,4 +1,5 @@
|
|||
# so we don't need to ship dll's twice, make it one directory:
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/InstallMacros.cmake)
|
||||
set(CMAKE_INSTALL_FULL_SBINDIR "${CMAKE_INSTALL_FULL_BINDIR}")
|
||||
set(W_INSTALL_FILES "${PROJECT_SOURCE_DIR}/Installation/Windows/")
|
||||
set(CPACK_PACKAGE_NAME "ArangoDB")
|
||||
|
@ -13,9 +14,11 @@ set(CPACK_PLUGIN_PATH "${CMAKE_CURRENT_SOURCE_DIR}/Installation/Windows/Plugins"
|
|||
set(BITS 64)
|
||||
if (CMAKE_CL_64)
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES64}")
|
||||
SET(ARANGODB_PACKAGE_ARCHITECTURE "win64")
|
||||
SET(BITS 64)
|
||||
else ()
|
||||
SET(CPACK_NSIS_INSTALL_ROOT "${PROGRAMFILES}")
|
||||
SET(ARANGODB_PACKAGE_ARCHITECTURE "win32")
|
||||
SET(BITS 32)
|
||||
endif ()
|
||||
|
||||
|
@ -32,8 +35,8 @@ if (NOT LIB_EAY_RELEASE_DLL OR NOT SSL_EAY_RELEASE_DLL)
|
|||
message(FATAL_ERROR, "BUNDLE_OPENSSL set but couldn't locate SSL DLLs. Please set LIB_EAY_RELEASE_DLL and SSL_EAY_RELEASE_DLL")
|
||||
endif()
|
||||
|
||||
install (FILES "${LIB_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}/" COMPONENT Libraries)
|
||||
install (FILES "${SSL_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}/" COMPONENT Libraries)
|
||||
install (FILES "${LIB_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_BINDIR}/" COMPONENT Libraries)
|
||||
install (FILES "${SSL_EAY_RELEASE_DLL}" DESTINATION "${CMAKE_INSTALL_BINDIR}/" COMPONENT Libraries)
|
||||
|
||||
# icon paths
|
||||
set (ICON_PATH "${W_INSTALL_FILES}/Icons/")
|
||||
|
@ -66,3 +69,36 @@ set(CPACK_ARANGODB_NSIS_DEFINES "
|
|||
!define TRI_FRIENDLY_SVC_NAME '${ARANGODB_FRIENDLY_STRING}'
|
||||
!define TRI_AARDVARK_URL 'http://127.0.0.1:8529'
|
||||
")
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
################################################################################
|
||||
# hook to build the server package
|
||||
################################################################################
|
||||
add_custom_target(package-arongodb-server-nsis
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G NSIS -C ${CMAKE_BUILD_TYPE}
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-server-nsis)
|
||||
|
||||
add_custom_target(package-arongodb-server-zip
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G ZIP -C ${CMAKE_BUILD_TYPE}
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-server-zip)
|
||||
|
||||
################################################################################
|
||||
# hook to build the client package
|
||||
################################################################################
|
||||
set(CLIENT_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../p)
|
||||
configure_file(cmake/packages/client/nsis.txt ${CLIENT_BUILD_DIR}/CMakeLists.txt @ONLY)
|
||||
add_custom_target(package-arongodb-client-nsis
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G NSIS -V -C ${CMAKE_BUILD_TYPE}
|
||||
COMMAND cp *.exe ${PROJECT_BINARY_DIR}
|
||||
WORKING_DIRECTORY ${CLIENT_BUILD_DIR})
|
||||
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-client-nsis)
|
||||
|
|
|
@ -182,7 +182,7 @@ var updateFishbowlFromZip = function (filename) {
|
|||
};
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief returns the search result for FOXX services
|
||||
// / @brief returns the search result for Foxx services
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var searchJson = function (name) {
|
||||
|
@ -227,7 +227,7 @@ var searchJson = function (name) {
|
|||
};
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief searchs for an available FOXX services
|
||||
// / @brief searchs for an available Foxx services
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var search = function (name) {
|
||||
|
@ -285,7 +285,7 @@ function extractMaxVersion (matchEngine, versionDoc) {
|
|||
}
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief returns all available FOXX services
|
||||
// / @brief returns all available Foxx services
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
function availableJson (matchEngine) {
|
||||
|
@ -356,7 +356,7 @@ var update = function () {
|
|||
};
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief prints all available FOXX services
|
||||
// / @brief prints all available Foxx services
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var available = function (matchEngine) {
|
||||
|
@ -380,7 +380,7 @@ var available = function (matchEngine) {
|
|||
};
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief gets json-info for an available FOXX service
|
||||
// / @brief gets json-info for an available Foxx service
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var infoJson = function (name) {
|
||||
|
@ -480,7 +480,7 @@ var installationInfo = function (serviceInfo) {
|
|||
};
|
||||
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
// / @brief prints info for an available FOXX service
|
||||
// / @brief prints info for an available Foxx service
|
||||
// //////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var info = function (name) {
|
||||
|
|
|
@ -1630,7 +1630,7 @@ function ahuacatlFunctionsTestSuite () {
|
|||
{ value: "foobaz", lookup: { foobar: "bar", foobaz: null }, expected: null, def: "foobaz" },
|
||||
{ value: "foobaz", lookup: { foobar: "bar", foobaz: [ 1, 2, 3 ] }, expected: [ 1, 2, 3 ], def: null },
|
||||
{ value: "foobaz", lookup: { foobar: "bar" }, expected: null, def: null },
|
||||
{ value: "foobaz", lookup: { }, expected: "FOXX", def: "FOXX" },
|
||||
{ value: "foobaz", lookup: { }, expected: "Foxx", def: "Foxx" },
|
||||
{ value: "foobaz", lookup: { foobar: "bar", foobaz: { thefoxx: "is great" } }, expected: { thefoxx: "is great" }, def: null },
|
||||
{ value: "one", lookup: { one: "two", two: "three", three: "four" }, expected: "two", def: "foo" },
|
||||
{ value: null, lookup: { "foo": "one", " ": "bar", "empty": 3 }, expected: "bla", def: "bla" },
|
||||
|
|
|
@ -319,7 +319,7 @@ void TRI_FixIcuDataEnv() {
|
|||
std::string p = TRI_LocateInstallDirectory();
|
||||
|
||||
if (!p.empty()) {
|
||||
std::string e = "ICU_DATA=" + p + "share\\arangodb\\";
|
||||
std::string e = "ICU_DATA=" + p + "share\\arangodb3\\";
|
||||
e = StringUtils::replace(e, "\\", "\\\\");
|
||||
putenv(e.c_str());
|
||||
} else {
|
||||
|
|
|
@ -6,12 +6,12 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
|
||||
cd ${DIR}/..
|
||||
|
||||
export PARALLEL_BUILDS=25
|
||||
./Installation/Jenkins/build.sh \
|
||||
standard \
|
||||
--rpath \
|
||||
--parallel 25 \
|
||||
--package DEB \
|
||||
--builddir build-deb \
|
||||
--buildDir build-deb \
|
||||
--targetDir /var/tmp/ \
|
||||
--jemalloc \
|
||||
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
cd ${DIR}/..
|
||||
|
||||
./Installation/Jenkins/build.sh \
|
||||
standard \
|
||||
--msvc \
|
||||
--buildDir /cygdrive/c/b/y/ \
|
||||
--package NSIS \
|
||||
--targetDir /var/tmp/
|
||||
|
||||
cd ${DIR}/..
|
|
@ -10,7 +10,7 @@ cd ${DIR}/..
|
|||
standard \
|
||||
--rpath \
|
||||
--package RPM \
|
||||
--builddir build-rpm \
|
||||
--buildDir build-rpm \
|
||||
--targetDir /var/tmp/ \
|
||||
--jemalloc \
|
||||
|
||||
|
|
Loading…
Reference in New Issue