Skip to content

Commit

Permalink
Fix VS2017 build issues and add Appveyor CI script (MaskRay#118)
Browse files Browse the repository at this point in the history
  • Loading branch information
DsoTsin authored and MaskRay committed Nov 10, 2019
1 parent 985f5ec commit e5f7a93
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 6 deletions.
22 changes: 22 additions & 0 deletions .appveyor.yml
Original file line number Diff line number Diff line change
@@ -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
7 changes: 4 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -50,16 +50,17 @@ if(MSVC)
/EHsc
/D_CRT_SECURE_NO_WARNINGS # don't try to use MSVC std replacements
/W3 # roughly -Wall
/wd4996 # disable loguru unsafe warnings
/wd4722 # ignores warning C4722
# (destructor never returns) in loguru
/wd4996 # ignore deprecated declaration
/wd4267 # ignores warning C4267
# (conversion from 'size_t' to 'type'),
# roughly -Wno-sign-compare
/wd4800
/wd4068 # Disable unknown pragma warning
/std:c++17
$<$<CONFIG:Debug>:/FS>
)
# relink system libs
target_link_libraries(ccls PRIVATE Mincore.lib)
else()
# Common GCC/Clang(Linux) options
target_compile_options(ccls PRIVATE
Expand Down
7 changes: 4 additions & 3 deletions cmake/FindClang.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -143,9 +143,10 @@ if(Clang_FOUND AND NOT TARGET Clang::Clang)
set_target_properties(Clang::Clang PROPERTIES
IMPORTED_LOCATION ${Clang_LIBRARY}
INTERFACE_INCLUDE_DIRECTORIES "${Clang_INCLUDE_DIR};${Clang_BUILD_INCLUDE_DIR};${LLVM_INCLUDE_DIR};${LLVM_BUILD_INCLUDE_DIR}")

find_package(Curses REQUIRED)
find_package(ZLIB REQUIRED)
if(NOT MSVC)
find_package(Curses REQUIRED)
find_package(ZLIB REQUIRED)
endif()
set_property(TARGET Clang::Clang PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES "${_Clang_LIBRARIES};${CURSES_LIBRARIES};${ZLIB_LIBRARIES}")
if(MINGW)
set_property(TARGET Clang::Clang APPEND_STRING PROPERTY IMPORTED_LINK_INTERFACE_LIBRARIES ";version")
Expand Down

0 comments on commit e5f7a93

Please sign in to comment.