2014-03-03 08:09:06 -07:00
|
|
|
# This is not meant to be included by the top-level.
|
|
|
|
cmake_minimum_required (VERSION 2.8.7)
|
2017-03-27 05:12:23 -07:00
|
|
|
project(NVIM_DEPS)
|
2015-03-20 12:31:39 -07:00
|
|
|
|
2015-03-09 06:24:21 -07:00
|
|
|
# Point CMake at any custom modules we may ship
|
|
|
|
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
|
2014-03-03 08:09:06 -07:00
|
|
|
|
2015-12-19 21:50:20 -07:00
|
|
|
# In Windows/MSVC CMAKE_BUILD_TYPE changes the paths/linking of the build
|
|
|
|
# recipes (libuv, msgpack), make sure it is set
|
|
|
|
if(NOT CMAKE_BUILD_TYPE)
|
|
|
|
set(CMAKE_BUILD_TYPE Release)
|
|
|
|
endif()
|
|
|
|
|
2015-07-04 09:25:28 -07:00
|
|
|
set(DEPS_INSTALL_DIR "${CMAKE_BINARY_DIR}/usr" CACHE PATH "Dependencies install directory.")
|
2015-07-22 03:12:22 -07:00
|
|
|
set(DEPS_BIN_DIR "${DEPS_INSTALL_DIR}/bin" CACHE PATH "Dependencies binary install directory.")
|
|
|
|
set(DEPS_LIB_DIR "${DEPS_INSTALL_DIR}/lib" CACHE PATH "Dependencies library install directory.")
|
|
|
|
set(DEPS_BUILD_DIR "${CMAKE_BINARY_DIR}/build" CACHE PATH "Dependencies build directory.")
|
|
|
|
set(DEPS_DOWNLOAD_DIR "${DEPS_BUILD_DIR}/downloads" CACHE PATH "Dependencies download directory.")
|
2014-03-03 08:09:06 -07:00
|
|
|
|
2014-05-31 07:24:02 -07:00
|
|
|
option(USE_BUNDLED "Use bundled dependencies." ON)
|
|
|
|
|
2015-04-12 07:40:08 -07:00
|
|
|
option(USE_BUNDLED_JEMALLOC "Use the bundled jemalloc." ${USE_BUNDLED})
|
2015-03-10 15:38:41 -07:00
|
|
|
option(USE_BUNDLED_UNIBILIUM "Use the bundled unibilium." ${USE_BUNDLED})
|
2014-12-01 15:46:11 -07:00
|
|
|
option(USE_BUNDLED_LIBTERMKEY "Use the bundled libtermkey." ${USE_BUNDLED})
|
2015-02-28 06:41:53 -07:00
|
|
|
option(USE_BUNDLED_LIBVTERM "Use the bundled libvterm." ${USE_BUNDLED})
|
2014-05-31 07:24:02 -07:00
|
|
|
option(USE_BUNDLED_LIBUV "Use the bundled libuv." ${USE_BUNDLED})
|
|
|
|
option(USE_BUNDLED_MSGPACK "Use the bundled msgpack." ${USE_BUNDLED})
|
|
|
|
option(USE_BUNDLED_LUAJIT "Use the bundled version of luajit." ${USE_BUNDLED})
|
|
|
|
option(USE_BUNDLED_LUAROCKS "Use the bundled version of luarocks." ${USE_BUNDLED})
|
2016-04-10 19:49:23 -07:00
|
|
|
option(USE_BUNDLED_LUV "Use the bundled version of luv." ${USE_BUNDLED})
|
2016-03-06 20:42:49 -07:00
|
|
|
#XXX(tarruda): Lua is only used for debugging the functional test client, no
|
|
|
|
# build it unless explicitly requested
|
|
|
|
option(USE_BUNDLED_LUA "Use the bundled version of lua." OFF)
|
2014-03-03 08:09:06 -07:00
|
|
|
|
2016-06-19 07:41:08 -07:00
|
|
|
if(USE_BUNDLED AND (NOT WIN32))
|
|
|
|
option(USE_BUNDLED_GPERF "Use the bundled version of gperf." ON)
|
|
|
|
else()
|
|
|
|
option(USE_BUNDLED_GPERF "Use the bundled version of gperf." OFF)
|
|
|
|
endif()
|
|
|
|
|
2015-09-08 03:09:44 -07:00
|
|
|
option(USE_EXISTING_SRC_DIR "Skip download of deps sources in case of existing source directory." OFF)
|
|
|
|
|
2014-11-05 17:41:14 -07:00
|
|
|
if(UNIX)
|
|
|
|
find_program(MAKE_PRG NAMES gmake make)
|
|
|
|
if(MAKE_PRG)
|
|
|
|
execute_process(
|
|
|
|
COMMAND "${MAKE_PRG}" --version
|
|
|
|
OUTPUT_VARIABLE MAKE_VERSION_INFO)
|
|
|
|
if(NOT "${OUTPUT_VARIABLE}" MATCHES ".*GNU.*")
|
|
|
|
unset(MAKE_PRG)
|
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
if(NOT MAKE_PRG)
|
|
|
|
message(FATAL_ERROR "GNU Make is required to build the dependencies.")
|
|
|
|
else()
|
|
|
|
message(STATUS "Found GNU Make at ${MAKE_PRG}")
|
2014-03-03 08:09:06 -07:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
|
|
|
# When using make, use the $(MAKE) variable to avoid warning about the job
|
|
|
|
# server.
|
|
|
|
if(CMAKE_GENERATOR MATCHES "Makefiles")
|
|
|
|
set(MAKE_PRG "$(MAKE)")
|
|
|
|
endif()
|
|
|
|
|
2014-09-23 10:35:22 -07:00
|
|
|
if(CMAKE_C_COMPILER_ARG1)
|
|
|
|
set(DEPS_C_COMPILER "${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1}")
|
|
|
|
else()
|
|
|
|
set(DEPS_C_COMPILER "${CMAKE_C_COMPILER}")
|
|
|
|
endif()
|
2014-03-03 08:09:06 -07:00
|
|
|
|
2015-04-16 02:01:08 -07:00
|
|
|
# Cross compiling: use these for dependencies built for the
|
|
|
|
# HOST system, when not crosscompiling these should be the
|
2016-01-15 15:05:43 -07:00
|
|
|
# same as DEPS_*. Except when targeting Unix in which case
|
2015-04-16 02:01:08 -07:00
|
|
|
# want all the dependencies to use the same compiler.
|
|
|
|
if(CMAKE_CROSSCOMPILING AND NOT UNIX)
|
|
|
|
set(HOSTDEPS_INSTALL_DIR "${CMAKE_BINARY_DIR}/host")
|
|
|
|
set(HOSTDEPS_BIN_DIR "${HOSTDEPS_INSTALL_DIR}/bin")
|
|
|
|
set(HOSTDEPS_LIB_DIR "${HOSTDEPS_INSTALL_DIR}/lib")
|
|
|
|
set(HOSTDEPS_C_COMPILER "${HOST_C_COMPILER}")
|
|
|
|
else()
|
|
|
|
set(HOSTDEPS_INSTALL_DIR "${DEPS_INSTALL_DIR}")
|
|
|
|
set(HOSTDEPS_BIN_DIR "${DEPS_BIN_DIR}")
|
|
|
|
set(HOSTDEPS_LIB_DIR "${DEPS_LIB_DIR}")
|
|
|
|
set(HOSTDEPS_C_COMPILER "${DEPS_C_COMPILER}")
|
|
|
|
endif()
|
|
|
|
|
2014-03-03 08:09:06 -07:00
|
|
|
include(ExternalProject)
|
|
|
|
|
2016-05-17 01:05:32 -07:00
|
|
|
set(LIBUV_URL https://github.com/libuv/libuv/archive/v1.9.1.tar.gz)
|
|
|
|
set(LIBUV_SHA256 a6ca9f0648973d1463f46b495ce546ddcbe7cce2f04b32e802a15539e46c57ad)
|
2014-03-15 00:22:52 -07:00
|
|
|
|
2017-03-30 07:35:48 -07:00
|
|
|
set(MSGPACK_URL https://github.com/msgpack/msgpack-c/archive/cpp-2.1.1.tar.gz)
|
|
|
|
set(MSGPACK_SHA256 d6bef12d959816a39c7a6972f3f16c0724e4c7ff0927eb59a35247dc8267b609)
|
2014-04-10 11:47:13 -07:00
|
|
|
|
2015-12-30 21:40:04 -07:00
|
|
|
set(LUAJIT_URL https://github.com/neovim/deps/raw/master/opt/LuaJIT-2.0.4.tar.gz)
|
2015-05-17 11:02:29 -07:00
|
|
|
set(LUAJIT_SHA256 620fa4eb12375021bef6e4f237cbd2dd5d49e56beb414bee052c746beef1807d)
|
2014-03-15 00:22:52 -07:00
|
|
|
|
2016-12-03 17:42:32 -07:00
|
|
|
set(LUA_URL https://www.lua.org/ftp/lua-5.1.5.tar.gz)
|
|
|
|
set(LUA_SHA256 2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333)
|
2016-03-06 20:42:49 -07:00
|
|
|
|
build: depend on bleeding-edge luarocks #2739
Recent luarocks adds support for these env vars:
http_proxy
https_proxy
no_proxy
Closes #2482
Changes since previous luarocks version (27 Aug 2014):
git log --oneline 0587afbb5fe8ceb2f2eea16f486bd6183bf02f29..HEAD
5d8a165 Merge pull request #371 from ignacio/proxies
4462ca5 Add `luarocks config` command for querying LuaRocks settings.
b80244b Merge branch 'master' of https://github.com/keplerproject/luarocks
dd6f0e7 Update lmathx used for testing Lua 5.3
70c7577 Merge pull request #366 from Tieske/windows_exitcode
11b8b48 fixes #365
0d071fa Back to scm
7bff020 Mark release 2.2.2
2f9c115 Merge branch 'master' of https://github.com/keplerproject/luarocks
9736020 Install .md files as docs
97b98bf Clip string.gsub results to just one when redacting url.
2a0a9fa Merge pull request #359 from ignacio/redact_verbose
968e963 Redact api tokens when using --verbose flag
9aa5d05 Update upload URL as well.
cda43ce Merge branch 'master' of https://github.com/keplerproject/luarocks
022c87d MoonRocks → LuaRocks.org transition complete!
7b6efb9 Trust the user :)
2c536b4 Deal with 'no_proxy' env var
f022fe0 Drop use of config.proxy
b6b6754 Merge pull request #354 from Tieske/pe_parser
460e42d update to version 0.3
2ee6bd7 Merge pull request #349 from ignacio/build_only_deps
15ad97b Address issues spotted in the review
6b350de Adds --only-deps flag to install command
6dd402b Adds new file (fetch/git_https.lua) to Makefile.setup.inc
46f8ad6 Merge pull request #350 from jszakmeister/add-git-https-support
989347e Add git+https support.
0f67be5 Adds --only-deps flag to the 'build' command.
0fe8556 Update function documentation, as suggested by @ignacio in #347.
0679559 Decided to step back in turn this into a warning. `luarocks list` on an empty ~/.luarocks is a valid use case.
40f9173 Fail when given an invalid tree.
6d5dfcd Fix crash on `luarocks --tree=/path list`. Closes #347.
1fcf354 Add test that checks for error in default sysconfig. See #346.
3ce554c Restore comment about second return, but put it in the right function. https://github.com/keplerproject/luarocks/pull/346#discussion_r28008668
0e3a052 Merge pull request #346 from Tieske/bad_config
c66a88e bail out on bad config files, fixes #228
79addc7 Continuing slowly. Distracted by code golf. :)
58fb6b9 Merge branch 'master' of https://github.com/keplerproject/luarocks
ed1f916 Starting to port test suite from Unix shell to Lua.
6f87c47 Merge pull request #343 from xpol/master
cbde573 And also hide the startup logo for RC.
5cb4aa7 Merge branch 'master' of https://github.com/keplerproject/luarocks
303cca7 Add AppVeyor badge
ad8ba47 Merge pull request #335 from ignacio/appveyor
a52b5ca Merge branch 'master' of https://github.com/keplerproject/luarocks
6251735 Add Coveralls coverage badge
2fcc0cc Add options to hide the MSVC tools' startup logo.
ff68e97 Fallback for platform variable
e31c46b Improved the CI scripts
050d656 Fix summary detection in long paragraphs
4ad1f1a Remove failing test. Try this some other time.
db81c2e Force package to be in cache.
303628a Add more simple tests.
8d6a9e3 Merge branch 'master' of https://github.com/keplerproject/luarocks
5b45de2 More small tests.
066cda4 Merge pull request #341 from keplerproject/add-travis
2639401 Make localhost a known host.
a549c6d Try not to block checking server identification.
7c8e527 Let's see if Travis allow sftp'ing to localhost.
98e0979 Merge branch 'master' of https://github.com/keplerproject/luarocks
5f293dd Remove debugging print.
ed02691 Add trivial tests for `luarocks upload`
b4ea2a1 Merge pull request #340 from xpol/master
b9789f3 Revert incorrect remove of cmake_generator support. Only windows (msvc) default cmake_generator are removed.
a19af6d luacov-coveralls overwrites luacov.report.out!
1b5bbfc luacov-coveralls did not exit with 0?
df08baf Run luacov-coveralls from $testing_dir
f3aaee7 Avoid tests that mess with the testing environment.
836898f Let's try Coveralls
b5244be Merge branch 'master' of https://github.com/keplerproject/luarocks
30430cf Don't overwrite --detailed when given by the user.
19ca56c Actually direct users to the bug tracker
57c838e Merge branch 'master' of https://github.com/keplerproject/luarocks
5495f3c A missing CWD returns "" for lfs.current_dir() on Ubuntu
db90cb4 Really test for missing parameters.
d3d74bf A missing CWD returns "" for fs.current_dir on Ubuntu...
a027595 Let's try harder to fail if CWD does not exist.
876d9c8 Fix inconsistency in --homepage flag in `luarocks doc` and `luarocks write_rockspec`.
294e08f Fix --lib flag (and my last commit goof...)
62d4e05 Fix tests: new flag parser detected invalid flags in the testsuite.
7f7c006 Add support for space in long option assignments.
68aa7ae Merge branch 'master' of https://github.com/keplerproject/luarocks
e869c09 Fail nicely if CWD does not exist. Fixes #147.
ae51a3c Fix confusing error when unpack fails due to network error
93cdd54 Adds integration with AppVeyor
28ade76 Fixes #332.
51ea074 Expose platform and processor to home config files.
a02a53a Merge branch 'master' of https://github.com/keplerproject/luarocks
4c96972 Don't use user tree when running as root. Fixes #303.
f15e49d Merge pull request #330 from mpeterv/hg-support
9567ac5 Merge pull request #329 from mpeterv/persist-refactor
20eb947 Improve hg support
cf19178 Refactor persist.save_from_table
3c7c472 Refactor persist.load_into_table
603b0ea Merge branch 'master' of https://github.com/keplerproject/luarocks
be3c52d Add extra smartness to configure to check that the user-given flag seems correct. Closes #293.
d820069 Merge pull request #326 from mpeterv/fix-redact-api
8739847 Merge branch 'master' of https://github.com/keplerproject/luarocks
5db7c54 Merge branch 'xpol-master'
7d22ee5 Open file in 'rb
90586f6 Merge branch 'master' of https://github.com/keplerproject/luarocks
bdf218b Remove commented code after remove cfg.cmake_generator.
b5e2539 Better cmake support.
df332f6 Fix url redacting when Luasocket is used
88a903a Add logo :)
6e21673 Try the one we have as `lua` first!
4e9a0e3 This is for Makefile.luarocks only.
ccab32f Merge branch 'new-makefile'
855259b New set of Makefiles for self-upgrade.
ff6fdfc Ignore more files.
92d6363 Make sure suffix is produced when installing via rock (see #323) and copy over site_config.lua, in case we're installing to a different prefix (see https://sourceforge.net/p/luarocks/mailman/message/33608257/)
dc5f200 Make it a bit more robust.
4347dc7 Redact API URL to hide API key.
650c8ae Back to our regularly scheduled programming
8649a4e Release LuaRocks 2.2.1
c7a704a Add test files that were not committed before.
463ee89 Don't crash when modules table is missing.
d110857 Use the system-installed stat.
0f9d259 Test success of patching in `unpack`. Closes #316. Includes test cases for the test suite! Yay!
9a9caf8 We're always using the internal patch module. See #316.
c9cc478 All 5.x versions of Lua share the same license.
92c7acb Clarify that runtime support is optional.
5f3d390 Don't crash when asking for help on invalid cmd.
46f2d25 Code cleanups suggested by luacheck.
7fe62f1 Remove unused assignment.
53e0c65 Direct users to the bug tracker
2013547 Support both --lua-version and --with-lua-version. Error messages were even already using it by accident!
48847a4 Support more file extensions as source files.
23afae6 Merge branch 'master' of https://github.com/keplerproject/luarocks
c54cbfc Fix behavior of `luarocks pack` on Windows. It was failing when a path contained spaces due to lack of quoting. Closes #308.
7f6320c Merge pull request #309 from mpeterv/unused_variables
500741f Removed some unused and global variables
113ada0 Merge branch 'master' of https://github.com/keplerproject/luarocks
9204178 Discard excess characters when a tool gives out an octal mode string that's too long. Fixes #53.
aa4e0d3 Merge pull request #298 from seclorum/master
9702239 Use updated LuaFileSystem for Lua 5.3
0f1c937 Updates for Lua 5.3 compatibility
8d6845e Make conversion more robust for Lua 5.3
d98c3e0 Make it more robust. (I _think_ win32 needs something similar, but there's the complication of drive letters so I won't touch it now without proper testing.)
8d588f9 Catch error if filename is a directory
1885a7f Improve error checking
f74346e Do not pack scm versions
cd99315 Fix search of lua interpreter. Closes #301.
4c503eb Update stdlib for 5.3 (thought I had this in the previous commit!)
c5501d4 Merge branch 'master' of https://github.com/keplerproject/luarocks
de654b3 Updates for Lua 5.3 support
4636244 use cprint version compatible with Lua 5.3
fc6d30d Update stdlib for Lua 5.3 compatibility
76e5515 Add Lua 5.3 to the test matrix
9ab9988 Add test that catches #228.
0ebdcd4 Updates to testing infrastructure (use new luasec, luacov)
e7f9680 Error out on bad config files. Alternative implementation to the one given by @Tieske, following discussion in #260. Closes #260. Closes #228.
02e8bbd Safer guards for OSX Deployment target selection..
c4558a3 OSX 10.10 Yosemite sw_vers update
db46b22 Apply change suggested by @siffiejoe. Thanks @catwell for catching this! Closes #295.
1a1c407 Add test for #295.
8bbf02e Make test suite detect crashes on tests that should fail gracefully.
7a7c124 Add check for Fedora systems. Closes #289.
723bf99 Isolate the convenience hack, for readability.
a35dd43 Silence complaints from `luarocks upload`. Closes #292.
af679a9 Fix typo. Closes #294.
453179d Provide a fallback for when the version number is 'scm', to avoid breaking Windows default paths (which assume something like c:\luarocks\2.2\ ) Closes #288.
88ea74e Make code more resilient.
0467eba Merge branch 'master' of https://github.com/keplerproject/luarocks
8278ed2 Add flag to enable/disable SSL cert check. We disabled SSL certificate checks for wget and curl a while ago, when we first added https repositories. We'll keep the check disabled by default for now, but this adds a config option, `check_certificates=true` that can be used in your config.lua.
af19063 Don't report WIP versions as releases.
d15e99f Merge pull request #285 from mpeterv/fix-lint
86ba23c Fix `luarocks lint`.
e5cd7a9 Add --outdated as a flag to `luarocks list`. A variation of the feature suggested in #282.
f0d66ae Support per-field version checking. This will allow us to add fields and bump rockspec version numbers in a well-behaved manner.
2015-05-25 09:31:05 -07:00
|
|
|
set(LUAROCKS_URL https://github.com/keplerproject/luarocks/archive/5d8a16526573b36d5b22aa74866120c998466697.tar.gz)
|
|
|
|
set(LUAROCKS_SHA256 cae709111c5701235770047dfd7169f66b82ae1c7b9b79207f9df0afb722bfd9)
|
2014-03-15 00:22:52 -07:00
|
|
|
|
2015-09-08 04:36:16 -07:00
|
|
|
set(UNIBILIUM_URL https://github.com/mauke/unibilium/archive/v1.2.0.tar.gz)
|
|
|
|
set(UNIBILIUM_SHA256 623af1099515e673abfd3cae5f2fa808a09ca55dda1c65a7b5c9424eb304ead8)
|
2014-12-01 15:46:11 -07:00
|
|
|
|
2016-12-11 22:50:39 -07:00
|
|
|
set(LIBTERMKEY_URL http://www.leonerd.org.uk/code/libtermkey/libtermkey-0.19.tar.gz)
|
|
|
|
set(LIBTERMKEY_SHA256 c505aa4cb48c8fa59c526265576b97a19e6ebe7b7da20f4ecaae898b727b48b7)
|
2014-12-01 15:46:11 -07:00
|
|
|
|
2016-03-04 13:45:10 -07:00
|
|
|
set(LIBVTERM_URL https://github.com/neovim/libvterm/archive/a9c7c6fd20fa35e0ad3e0e98901ca12dfca9c25c.tar.gz)
|
|
|
|
set(LIBVTERM_SHA256 1a4272be91d9614dc183a503786df83b6584e4afaab7feaaa5409f841afbd796)
|
2015-02-28 06:41:53 -07:00
|
|
|
|
2016-11-21 05:36:55 -07:00
|
|
|
set(JEMALLOC_URL https://github.com/jemalloc/jemalloc/releases/download/4.3.1/jemalloc-4.3.1.tar.bz2)
|
|
|
|
set(JEMALLOC_SHA256 f7bb183ad8056941791e0f075b802e8ff10bd6e2d904e682f87c8f6a510c278b)
|
2016-07-02 23:26:47 -07:00
|
|
|
|
2016-09-10 05:48:41 -07:00
|
|
|
set(LUV_URL https://github.com/luvit/luv/archive/1.9.1-0.tar.gz)
|
|
|
|
set(LUV_SHA256 86a199403856018cd8e5529c8527450c83664a3d36f52d5253cbe909ea6c5a06)
|
2015-02-28 06:41:53 -07:00
|
|
|
|
2016-06-19 07:41:08 -07:00
|
|
|
set(GPERF_URL http://ftp.gnu.org/pub/gnu/gperf/gperf-3.0.4.tar.gz)
|
|
|
|
set(GPERF_SHA256 767112a204407e62dbc3106647cf839ed544f3cf5d0f0523aaa2508623aad63e)
|
|
|
|
|
2017-02-09 16:53:36 -07:00
|
|
|
# 7za.exe cat.exe curl.exe ca-bundle.crt diff.exe tee.exe tidy.exe xxd.exe
|
2017-03-01 04:25:49 -07:00
|
|
|
set(WINTOOLS_URL https://github.com/neovim/deps/raw/2f9acbecf06365c10baa3c0087f34a54c9c6f949/opt/win32tools.zip)
|
|
|
|
set(WINTOOLS_SHA256 8bfce7e3a365721a027ce842f2ec1cf878f1726233c215c05964aac07300798c)
|
2017-02-09 16:53:36 -07:00
|
|
|
|
2017-03-11 08:00:26 -07:00
|
|
|
set(WINGUI_URL https://github.com/equalsraf/neovim-qt/releases/download/v0.2.6/neovim-qt.zip)
|
|
|
|
set(WINGUI_SHA256 90217351e9e51c81ef5bba39066f00d05e15ef1f881882c3c682e61cd446c211)
|
2017-02-15 10:13:49 -07:00
|
|
|
|
2017-03-11 06:10:19 -07:00
|
|
|
set(WIN32YANK_URL https://github.com/equalsraf/win32yank/releases/download/v0.0.3/win32yank.zip)
|
|
|
|
set(WIN32YANK_SHA256 b474439ed2854a9a24941d66970c7fcfece219401eaaa5ebc0ffcc962e69887a)
|
2015-12-18 18:30:29 -07:00
|
|
|
|
2016-02-24 16:08:08 -07:00
|
|
|
set(WINPTY_URL https://github.com/rprichard/winpty/releases/download/0.4.2/winpty-0.4.2-msvc2015.zip)
|
|
|
|
set(WINPTY_SHA256 b465f2584ff394b3fe27c01aa1dcfc679583c1ee951d0e83de3f859d8b8305b8)
|
|
|
|
|
2015-03-10 15:38:41 -07:00
|
|
|
if(USE_BUNDLED_UNIBILIUM)
|
|
|
|
include(BuildUnibilium)
|
2014-12-01 15:46:11 -07:00
|
|
|
endif()
|
|
|
|
|
|
|
|
if(USE_BUNDLED_LIBTERMKEY)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildLibtermkey)
|
2014-12-01 15:46:11 -07:00
|
|
|
endif()
|
|
|
|
|
2015-02-28 06:41:53 -07:00
|
|
|
if(USE_BUNDLED_LIBVTERM)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildLibvterm)
|
2015-02-28 06:41:53 -07:00
|
|
|
endif()
|
|
|
|
|
2014-03-03 08:09:06 -07:00
|
|
|
if(USE_BUNDLED_LIBUV)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildLibuv)
|
2014-03-03 08:09:06 -07:00
|
|
|
endif()
|
|
|
|
|
2014-04-10 11:47:13 -07:00
|
|
|
if(USE_BUNDLED_MSGPACK)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildMsgpack)
|
2014-04-10 11:47:13 -07:00
|
|
|
endif()
|
|
|
|
|
2014-03-03 08:09:06 -07:00
|
|
|
if(USE_BUNDLED_LUAJIT)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildLuajit)
|
2014-03-03 08:09:06 -07:00
|
|
|
endif()
|
|
|
|
|
2016-03-06 20:42:49 -07:00
|
|
|
if(USE_BUNDLED_LUA AND NOT CMAKE_CROSSCOMPILING)
|
|
|
|
include(BuildLua)
|
|
|
|
endif()
|
|
|
|
|
2014-03-03 08:09:06 -07:00
|
|
|
if(USE_BUNDLED_LUAROCKS)
|
2015-03-09 06:24:21 -07:00
|
|
|
include(BuildLuarocks)
|
2014-03-03 08:09:06 -07:00
|
|
|
endif()
|
|
|
|
|
2015-04-12 07:40:08 -07:00
|
|
|
if(USE_BUNDLED_JEMALLOC)
|
|
|
|
include(BuildJeMalloc)
|
|
|
|
endif()
|
|
|
|
|
2016-04-10 19:49:23 -07:00
|
|
|
if(USE_BUNDLED_LUV)
|
|
|
|
include(BuildLuv)
|
|
|
|
endif()
|
|
|
|
|
2016-06-19 07:41:08 -07:00
|
|
|
if(USE_BUNDLED_GPERF)
|
|
|
|
include(BuildGperf)
|
|
|
|
endif()
|
|
|
|
|
2015-12-18 18:30:29 -07:00
|
|
|
include(GetBinaryDeps)
|
|
|
|
|
|
|
|
if(WIN32)
|
2017-02-09 16:53:36 -07:00
|
|
|
GetBinaryDep(TARGET wintools
|
|
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory . ${DEPS_INSTALL_DIR}/bin)
|
|
|
|
|
2015-12-18 18:30:29 -07:00
|
|
|
GetBinaryDep(TARGET win32yank
|
|
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy win32yank.exe ${DEPS_INSTALL_DIR}/bin)
|
2016-02-24 16:08:08 -07:00
|
|
|
|
2017-02-15 10:13:49 -07:00
|
|
|
GetBinaryDep(TARGET wingui
|
2017-02-17 19:32:57 -07:00
|
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory bin ${DEPS_INSTALL_DIR}/bin)
|
2017-02-15 10:13:49 -07:00
|
|
|
|
2016-02-24 16:08:08 -07:00
|
|
|
include(TargetArch)
|
|
|
|
if("${TARGET_ARCH}" STREQUAL "X86_64")
|
|
|
|
set(TARGET_ARCH x64)
|
|
|
|
elseif(TARGET_ARCH STREQUAL "X86")
|
|
|
|
set(TARGET_ARCH ia32)
|
|
|
|
endif()
|
|
|
|
GetBinaryDep(TARGET winpty
|
|
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} -E make_directory ${DEPS_INSTALL_DIR}/bin
|
|
|
|
COMMAND ${CMAKE_COMMAND} -DFROM_GLOB=${DEPS_BUILD_DIR}/src/winpty/${TARGET_ARCH}/bin/*
|
|
|
|
-DTO=${DEPS_INSTALL_DIR}/bin/
|
|
|
|
-P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/CopyFilesGlob.cmake
|
|
|
|
COMMAND ${CMAKE_COMMAND} -DFROM_GLOB=${DEPS_BUILD_DIR}/src/winpty/include/*
|
|
|
|
-DTO=${DEPS_INSTALL_DIR}/include/
|
|
|
|
-P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/CopyFilesGlob.cmake
|
|
|
|
COMMAND ${CMAKE_COMMAND} -DFROM_GLOB=${DEPS_BUILD_DIR}/src/winpty/${TARGET_ARCH}/lib/*
|
|
|
|
-DTO=${DEPS_INSTALL_DIR}/lib/
|
|
|
|
-P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/CopyFilesGlob.cmake)
|
2015-12-18 18:30:29 -07:00
|
|
|
endif()
|
|
|
|
|
2015-04-20 03:37:07 -07:00
|
|
|
add_custom_target(clean-shared-libraries
|
|
|
|
COMMAND ${CMAKE_COMMAND}
|
|
|
|
-DREMOVE_FILE_GLOB=${DEPS_INSTALL_DIR}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}*${CMAKE_SHARED_LIBRARY_SUFFIX}*
|
|
|
|
-P ${PROJECT_SOURCE_DIR}/cmake/RemoveFiles.cmake
|
|
|
|
DEPENDS ${THIRD_PARTY_DEPS}
|
|
|
|
)
|
|
|
|
|
2014-03-03 08:09:06 -07:00
|
|
|
add_custom_target(third-party ALL
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E touch .third-party
|
2015-04-20 03:37:07 -07:00
|
|
|
DEPENDS clean-shared-libraries)
|