Commit graph

21 commits

Author SHA1 Message Date
ridiculousfish
3099d46736 Disable exception handling in CMake build
Now that muparser no longer relies on exceptions, we can disable them
again.
2017-12-18 23:01:17 -08:00
David Adam
32714021f5 cmake: add gettext support 2017-11-17 16:21:56 +08:00
David Adam
7e24c14f8c cmake: print feature summary 2017-11-17 16:21:56 +08:00
David Adam
f5209deacc cmake: update CheckIncludeFiles to enable C++ checks 2017-11-17 16:21:56 +08:00
David Adam
68da7ab822 cmake: use C++ rather than C checks for all checks
Disables C language for fish project to catch errors.
2017-11-17 16:21:56 +08:00
David Adam
de9f034318 cmake: minimum required cmake version should be first line in file
See note in https://cmake.org/cmake/help/v3.8/command/project.html
2017-11-17 16:21:55 +08:00
David Adam
396faebc08 Move CMakeFiles to cmake
Makes in-tree (ie `cmake .`) builds work.
2017-11-17 16:21:55 +08:00
ridiculousfish
7c8ed80e64 Fix up builtin_wait build system
Add missing CMake and Xcode files, and mark some variables as const
reference.
2017-11-16 10:48:21 -08:00
ridiculousfish
39ddfa2ad2 Migrate muParser to CMake
This adds a CMakeLists.txt inside muParser, so it can be build
with CMake.
2017-11-05 13:00:34 -08:00
ridiculousfish
2ca7b88d49 Stop linking against libform in cmake build
Switch to ${CURSES_LIBRARY} and ${CURSES_EXTRA_LIBRARY}
instead of ${CURSES_LIBRARIES} to reduce the linked libraries
in the CMake build.
2017-10-14 13:11:42 -07:00
ridiculousfish
cb9c077850 Add support for dladdr in CMake build
This links against CMAKE_DL_LIBS, reflecting the recent change
73f2992a2.
2017-10-14 13:11:42 -07:00
ridiculousfish
31348bee46 Improve IDE grouping in the CMake build
This adds intelligent groups and hides unused files when generating
IDE projects (Xcode, CLion, etc) in the CMake build.
2017-10-14 13:11:42 -07:00
ridiculousfish
a7f22f7df3 Factor fish sources into library in CMake build
This adds a new library fishlib, which the CMake build builds.
This library is linked by the tests, fish, and fish_indent, so
that object files do not have to be built separately for each
of them.
2017-10-14 13:11:42 -07:00
ridiculousfish
4113e406a9 Add install step to CMake build
This adds a file Install.cmake for installing fish. It is
quite incomplete; in particular it does not support building
the docs.
2017-10-14 13:11:42 -07:00
ridiculousfish
0909fe12e8 Additional work on building docs with CMake 2017-10-14 13:11:42 -07:00
ridiculousfish
861b55d7d8 Build FISH-BUILD-VERSION-FILE in CMake build
This adds support for creating the FISH-BUILD-VERSION-FILE in the CMake
build. A FISH-BUILD-VERSION-FILE is created in the CMake directory
and only updated when necessary.
2017-10-14 13:11:42 -07:00
ridiculousfish
f044084f3a Factor out building lexicon_filter into separate script
This adds a new script build_tools/build_lexicon_filter.sh
that builds the lexicon filter. It is factored out from the Makefile,
and both the Makefile and CMake build invoke it.
2017-10-14 13:11:41 -07:00
ridiculousfish
6ff0f86606 Define fish_indent and fish_key_reader in CMake
This adds CMake targets for fish_indent and fish_key_reader.
2017-10-14 13:11:41 -07:00
ridiculousfish
af6bbbf83e Support for fish_tests
This adds a basic Tests.cmake that can build and run fish_tests.
It also adds a 'test' target.
2017-10-14 13:11:41 -07:00
ridiculousfish
fe37a1646d Build pcre2 and muparser with CMake
This adds files MuParser.cmake and PCRE2.cmake. PCRE2 is built using
its own CMake path, while MuParser uses ExternalProject.
2017-10-14 13:11:41 -07:00
ridiculousfish
9f8ae95b0e Initial CMake import
This adds a basic CMakeLists.txt. It also adds a ConfigureChecks.cmake
and config_cmake.h.in that produces a config.h.
2017-10-14 13:11:41 -07:00