mirror of
https://github.com/MaskRay/ccls.git
synced 2024-11-24 00:25:07 +00:00
Fix VS2017 build issues and add Appveyor CI script (#118)
This commit is contained in:
parent
985f5ec4d3
commit
e5f7a938b5
22
.appveyor.yml
Normal file
22
.appveyor.yml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
version: "{build}"
|
||||||
|
|
||||||
|
os: Visual Studio 2017
|
||||||
|
|
||||||
|
platform:
|
||||||
|
- x64
|
||||||
|
|
||||||
|
build:
|
||||||
|
parallel: true # enable MSBuild parallel builds
|
||||||
|
verbosity: minimal
|
||||||
|
|
||||||
|
install:
|
||||||
|
- if not exist llvm.tar.xz appveyor DownloadFile "https://ziglang.org/deps/llvm+clang-7.0.0-win64-msvc-release.tar.xz" -FileName llvm.tar.xz
|
||||||
|
- 7z e -txz llvm.tar.xz
|
||||||
|
- 7z x llvm.tar
|
||||||
|
- git submodule update --init --recursive
|
||||||
|
build_script:
|
||||||
|
- cmake -G"Visual Studio 15 2017 Win64" -H. -Bbuild -DCMAKE_BUILD_TYPE=Release -DSYSTEM_CLANG=ON -DCLANG_ROOT=C:\projects\ccls\llvm+clang-7.0.0-win64-msvc-release
|
||||||
|
- cmake --build build --target ccls --config Release
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
- path: build\Release
|
@ -50,16 +50,17 @@ if(MSVC)
|
|||||||
/EHsc
|
/EHsc
|
||||||
/D_CRT_SECURE_NO_WARNINGS # don't try to use MSVC std replacements
|
/D_CRT_SECURE_NO_WARNINGS # don't try to use MSVC std replacements
|
||||||
/W3 # roughly -Wall
|
/W3 # roughly -Wall
|
||||||
/wd4996 # disable loguru unsafe warnings
|
/wd4996 # ignore deprecated declaration
|
||||||
/wd4722 # ignores warning C4722
|
|
||||||
# (destructor never returns) in loguru
|
|
||||||
/wd4267 # ignores warning C4267
|
/wd4267 # ignores warning C4267
|
||||||
# (conversion from 'size_t' to 'type'),
|
# (conversion from 'size_t' to 'type'),
|
||||||
# roughly -Wno-sign-compare
|
# roughly -Wno-sign-compare
|
||||||
/wd4800
|
/wd4800
|
||||||
/wd4068 # Disable unknown pragma warning
|
/wd4068 # Disable unknown pragma warning
|
||||||
|
/std:c++17
|
||||||
$<$<CONFIG:Debug>:/FS>
|
$<$<CONFIG:Debug>:/FS>
|
||||||
)
|
)
|
||||||
|
# relink system libs
|
||||||
|
target_link_libraries(ccls PRIVATE Mincore.lib)
|
||||||
else()
|
else()
|
||||||
# Common GCC/Clang(Linux) options
|
# Common GCC/Clang(Linux) options
|
||||||
target_compile_options(ccls PRIVATE
|
target_compile_options(ccls PRIVATE
|
||||||
|
@ -143,9 +143,10 @@ if(Clang_FOUND AND NOT TARGET Clang::Clang)
|
|||||||
set_target_properties(Clang::Clang PROPERTIES
|
set_target_properties(Clang::Clang PROPERTIES
|
||||||
IMPORTED_LOCATION ${Clang_LIBRARY}
|
IMPORTED_LOCATION ${Clang_LIBRARY}
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${Clang_INCLUDE_DIR};${Clang_BUILD_INCLUDE_DIR};${LLVM_INCLUDE_DIR};${LLVM_BUILD_INCLUDE_DIR}")
|
INTERFACE_INCLUDE_DIRECTORIES "${Clang_INCLUDE_DIR};${Clang_BUILD_INCLUDE_DIR};${LLVM_INCLUDE_DIR};${LLVM_BUILD_INCLUDE_DIR}")
|
||||||
|
if(NOT MSVC)
|
||||||
find_package(Curses REQUIRED)
|
find_package(Curses REQUIRED)
|
||||||
find_package(ZLIB REQUIRED)
|
find_package(ZLIB REQUIRED)
|
||||||
|
endif()
|
||||||
set_property(TARGET Clang::Clang PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${_Clang_LIBRARIES};${CURSES_LIBRARIES};${ZLIB_LIBRARIES}")
|
set_property(TARGET Clang::Clang PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${_Clang_LIBRARIES};${CURSES_LIBRARIES};${ZLIB_LIBRARIES}")
|
||||||
if(MINGW)
|
if(MINGW)
|
||||||
set_property(TARGET Clang::Clang APPEND_STRING PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES ";version")
|
set_property(TARGET Clang::Clang APPEND_STRING PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES ";version")
|
||||||
|
Loading…
Reference in New Issue
Block a user