From e1718745247af2cee6c71715f019a2f75b798535 Mon Sep 17 00:00:00 2001 From: An Tao Date: Sat, 29 Feb 2020 15:46:08 +0800 Subject: [PATCH] Modify installation on Windows (#366) --- .appveyor.yml | 41 +++++ .travis.yml | 2 +- CMakeLists.txt | 107 ++++++------ README.md | 1 + cmake/templates/DrogonConfig.cmake.in | 7 +- cmake_modules/FindMySQL.cmake | 3 + drogon_ctl/CMakeLists.txt | 12 +- drogon_ctl/CopyDlls.cmake | 6 + examples/CMakeLists.txt | 12 +- examples/simple_example/index.html.gz | Bin 0 -> 3691 bytes third_party/mman-win32/.gitignore | 2 - third_party/mman-win32/CMakeLists.txt | 33 ---- third_party/mman-win32/Makefile | 68 -------- third_party/mman-win32/configure | 170 -------------------- third_party/mman-win32/mman-win32.pro | 13 -- third_party/mman-win32/mman.sln | 28 ---- third_party/mman-win32/mman.vcxproj | 122 -------------- third_party/mman-win32/mman.vcxproj.filters | 30 ---- third_party/mman-win32/mman.vcxproj.user | 4 - trantor | 2 +- 20 files changed, 119 insertions(+), 544 deletions(-) create mode 100644 .appveyor.yml create mode 100644 drogon_ctl/CopyDlls.cmake create mode 100644 examples/simple_example/index.html.gz delete mode 100644 third_party/mman-win32/.gitignore delete mode 100644 third_party/mman-win32/CMakeLists.txt delete mode 100644 third_party/mman-win32/Makefile delete mode 100644 third_party/mman-win32/configure delete mode 100644 third_party/mman-win32/mman-win32.pro delete mode 100644 third_party/mman-win32/mman.sln delete mode 100644 third_party/mman-win32/mman.vcxproj delete mode 100644 third_party/mman-win32/mman.vcxproj.filters delete mode 100644 third_party/mman-win32/mman.vcxproj.user diff --git a/.appveyor.yml b/.appveyor.yml new file mode 100644 index 00000000..842e4cc9 --- /dev/null +++ b/.appveyor.yml @@ -0,0 +1,41 @@ +version: 1.0.0.{build} +configuration: +- Release +- Debug + +environment: + matrix: + - GENERATOR: Visual Studio 15 2017 + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + ARCH: Win32 + + - GENERATOR: Visual Studio 15 2017 + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + ARCH: x64 + +init: +- cmake --version +install: +- cd C:\Tools\vcpkg +- git pull +- .\bootstrap-vcpkg.bat +- vcpkg install jsoncpp:x86-windows +- vcpkg install jsoncpp:x64-windows +- vcpkg install zlib:x86-windows +- vcpkg install zlib:x64-windows +- vcpkg install libpq:x86-windows +- vcpkg install libpq:x64-windows +- vcpkg integrate install +- cd %APPVEYOR_BUILD_FOLDER% +before_build: +- git submodule update --init +- md build +- cd build +- cmake --config "%CONFIGURATION%" -G "%GENERATOR%" -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake .. +build_script: +- cmake --build . --config "%CONFIGURATION%" +build: + project: build\ALL_BUILD.vcxproj + verbosity: minimal +cache: +- c:\tools\vcpkg\installed\ \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 98a8fdfb..a5a1948f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,7 +3,7 @@ matrix: - os: linux dist: xenial - os: osx - osx_image: xcode11.3 + osx_image: xcode11.2 sudo: required diff --git a/CMakeLists.txt b/CMakeLists.txt index f016fa82..0486b11a 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.5) -project(drogon CXX) +project(drogon) message(STATUS "compiler: " ${CMAKE_CXX_COMPILER_ID}) option(BUILD_CTL "Build drogon_ctl" ON) option(BUILD_EXAMPLES "Build examples" ON) @@ -21,11 +21,7 @@ set(INSTALL_BIN_DIR bin CACHE PATH "Installation directory for executables") set(INSTALL_INCLUDE_DIR include CACHE PATH "Installation directory for header files") -if(WIN32 AND NOT CYGWIN) - set(DEF_INSTALL_DROGON_CMAKE_DIR cmake) -else() - set(DEF_INSTALL_DROGON_CMAKE_DIR lib/cmake/Drogon) -endif() +set(DEF_INSTALL_DROGON_CMAKE_DIR lib/cmake/Drogon) set(INSTALL_DROGON_CMAKE_DIR ${DEF_INSTALL_DROGON_CMAKE_DIR} CACHE PATH "Installation directory for cmake files") @@ -49,9 +45,9 @@ if(BUILD_DROGON_SHARED) set(CMAKE_INSTALL_RPATH "${INSTALL_LIB_DIR}") endif("${isSystemDir}" STREQUAL "-1") add_library(${PROJECT_NAME} SHARED) -else() +else(BUILD_DROGON_SHARED) add_library(${PROJECT_NAME} STATIC) -endif() +endif(BUILD_DROGON_SHARED) include(CheckIncludeFileCXX) @@ -59,9 +55,9 @@ check_include_file_cxx(any HAS_ANY) check_include_file_cxx(string_view HAS_STRING_VIEW) if(HAS_ANY AND HAS_STRING_VIEW) set(DROGON_CXX_STANDARD 17) -else() +else(HAS_ANY AND HAS_STRING_VIEW) set(DROGON_CXX_STANDARD 14) -endif() +endif(HAS_ANY AND HAS_STRING_VIEW) target_include_directories( ${PROJECT_NAME} @@ -83,18 +79,13 @@ list(APPEND INCLUDE_DIRS_FOR_DYNAMIC_VIEW ${PROJECT_SOURCE_DIR}/orm_lib/inc ${PROJECT_SOURCE_DIR}/trantor) -if(WIN32) - add_subdirectory(third_party/mman-win32) -endif(WIN32) add_subdirectory(trantor) target_link_libraries(${PROJECT_NAME} PUBLIC trantor) -if(WIN32) - target_link_libraries(${PROJECT_NAME} PRIVATE mman) -else() +if(NOT WIN32) target_link_libraries(${PROJECT_NAME} PRIVATE dl) -endif(WIN32) +endif(NOT WIN32) if(DROGON_CXX_STANDARD LESS 17) # With C++14, use boost to support any and string_view @@ -102,9 +93,9 @@ if(DROGON_CXX_STANDARD LESS 17) find_package(Boost 1.61.0 REQUIRED) target_include_directories(${PROJECT_NAME} PUBLIC ${Boost_INCLUDE_DIRS}) list(APPEND INCLUDE_DIRS_FOR_DYNAMIC_VIEW ${Boost_INCLUDE_DIRS}) -else() +else(DROGON_CXX_STANDARD LESS 17) message(STATUS "use c++17") -endif() +endif(DROGON_CXX_STANDARD LESS 17) set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake_modules/) @@ -133,7 +124,7 @@ if(NOT WIN32) FATAL_ERROR "jsoncpp lib is too old,please get new version from https://github.com/open-source-parsers/jsoncpp" ) - endif() + endif(jsoncpp_ver LESS 1.7) find_package(UUID REQUIRED) target_include_directories(${PROJECT_NAME} PRIVATE ${UUID_INCLUDE_DIR}) @@ -155,11 +146,6 @@ if(NOT WIN32) message(FATAL_ERROR "uuid lib error") endif() endif(NOT WIN32) -if(NOT MSVC OR NOT BUILD_ORM) - find_package(ZLIB REQUIRED) - target_include_directories(${PROJECT_NAME} PRIVATE ${ZLIB_INCLUDE_DIR}) - target_link_libraries(${PROJECT_NAME} PRIVATE ${ZLIB_LIBRARIES}) -endif(NOT MSVC OR NOT BUILD_ORM) set(DROGON_SOURCES lib/src/AOPAdvice.cc @@ -197,17 +183,10 @@ set(DROGON_SOURCES if(NOT WIN32) set(DROGON_SOURCES ${DROGON_SOURCES} lib/src/SharedLibManager.cc) +else(NOT WIN32) + set(DROGON_SOURCES ${DROGON_SOURCES} third_party/mman-win32/mman.c) endif(NOT WIN32) -find_package(OpenSSL) -if(OpenSSL_FOUND) - target_include_directories(${PROJECT_NAME} PRIVATE ${OPENSSL_INCLUDE_DIR}) - target_link_libraries(${PROJECT_NAME} PRIVATE ${OPENSSL_LIBRARIES}) -else() - set(DROGON_SOURCES ${DROGON_SOURCES} lib/src/ssl_funcs/Md5.cc - lib/src/ssl_funcs/Sha1.cc) -endif() - if(BUILD_ORM) # find postgres find_package(PostgreSQL) @@ -224,18 +203,18 @@ if(BUILD_ORM) ${PROJECT_SOURCE_DIR}/cmake/tests/test_libpq_batch_mode.cc LINK_LIBRARIES ${PostgreSQL_LIBRARIES} CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${PostgreSQL_INCLUDE_DIR}") - endif() + endif(LIBPQ_BATCH_MODE) if(libpq_supports_batch) message(STATUS "The libpq supports batch mode") option(LIBPQ_SUPPORTS_BATCH_MODE "libpq batch mode" ON) set(DROGON_SOURCES ${DROGON_SOURCES} orm_lib/src/postgresql_impl/PgBatchConnection.cc) - else() + else(libpq_supports_batch) option(LIBPQ_SUPPORTS_BATCH_MODE "libpq batch mode" OFF) set(DROGON_SOURCES ${DROGON_SOURCES} orm_lib/src/postgresql_impl/PgConnection.cc) - endif() - endif() + endif(libpq_supports_batch) + endif(PostgreSQL_FOUND) # Find mysql, only mariadb client liberary is supported find_package(MySQL) @@ -266,8 +245,24 @@ if(BUILD_ORM) set(DROGON_SOURCES ${DROGON_SOURCES} orm_lib/src/sqlite3_impl/Sqlite3Connection.cc orm_lib/src/sqlite3_impl/Sqlite3ResultImpl.cc) - endif() -endif() + endif(SQLITE3_FOUND) +endif(BUILD_ORM) + +if((NOT MSVC) OR (NOT BUILD_ORM)) + find_package(ZLIB REQUIRED) + target_include_directories(${PROJECT_NAME} PRIVATE ${ZLIB_INCLUDE_DIR}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${ZLIB_LIBRARIES}) + message(STATUS "zlib:" ${ZLIB_LIBRARIES}) +endif((NOT MSVC) OR (NOT BUILD_ORM)) + +find_package(OpenSSL) +if(OpenSSL_FOUND) + target_include_directories(${PROJECT_NAME} PRIVATE ${OPENSSL_INCLUDE_DIR}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${OPENSSL_LIBRARIES}) +else(OpenSSL_FOUND) + set(DROGON_SOURCES ${DROGON_SOURCES} lib/src/ssl_funcs/Md5.cc + lib/src/ssl_funcs/Sha1.cc) +endif(OpenSSL_FOUND) execute_process(COMMAND "git" rev-parse HEAD WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" @@ -278,11 +273,11 @@ configure_file("${PROJECT_SOURCE_DIR}/cmake/templates/version.h.in" if(BUILD_EXAMPLES) add_subdirectory(examples) -endif() +endif(BUILD_EXAMPLES) if(BUILD_CTL) add_subdirectory(drogon_ctl) -endif() +endif(BUILD_CTL) if(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) set(DROGON_SOURCES @@ -300,9 +295,9 @@ if(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) orm_lib/src/SqlBinder.cc orm_lib/src/TransactionImpl.cc orm_lib/src/RestfulController.cc) -else() +else(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) set(DROGON_SOURCES ${DROGON_SOURCES} lib/src/DbClientManagerSkipped.cc) -endif() +endif(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) target_sources(${PROJECT_NAME} PRIVATE ${DROGON_SOURCES}) @@ -315,22 +310,22 @@ set_target_properties(${PROJECT_NAME} PROPERTIES EXPORT_NAME Drogon) if(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) if(PostgreSQL_FOUND) option(USE_POSTGRESQL "Enable PostgreSQL" ON) - else() + else(PostgreSQL_FOUND) option(USE_POSTGRESQL "Disable PostgreSQL" OFF) - endif() + endif(PostgreSQL_FOUND) if(MYSQL_FOUND) option(USE_MYSQL "Enable Mysql" ON) - else() + else(MYSQL_FOUND) option(USE_MYSQL "DisableMysql" OFF) - endif() + endif(MYSQL_FOUND) if(SQLITE3_FOUND) option(USE_SQLITE3 "Enable Sqlite3" ON) - else() + else(SQLITE3_FOUND) option(USE_SQLITE3 "Disable Sqlite3" OFF) - endif() -endif() + endif(SQLITE3_FOUND) +endif(PostgreSQL_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND) set(COMPILER_COMMAND ${CMAKE_CXX_COMPILER}) set(COMPILER_ID ${CMAKE_CXX_COMPILER_ID}) @@ -344,9 +339,9 @@ if(CMAKE_BUILD_TYPE) else() set(COMPILATION_FLAGS "-std=c++") endif() -else() +else(CMAKE_BUILD_TYPE) set(COMPILATION_FLAGS "-std=c++") -endif() +endif(CMAKE_BUILD_TYPE) list(APPEND INCLUDE_DIRS_FOR_DYNAMIC_VIEW "${INSTALL_INCLUDE_DIR}") list(REMOVE_DUPLICATES INCLUDE_DIRS_FOR_DYNAMIC_VIEW) @@ -365,13 +360,13 @@ if(BUILD_TESTING) if(PostgreSQL_FOUND) add_subdirectory(${PROJECT_SOURCE_DIR}/orm_lib/src/postgresql_impl/test) add_subdirectory(${PROJECT_SOURCE_DIR}/orm_lib/tests) - endif() + endif(PostgreSQL_FOUND) if(MYSQL_FOUND) add_subdirectory(${PROJECT_SOURCE_DIR}/orm_lib/src/mysql_impl/test) - endif() + endif(MYSQL_FOUND) if(SQLITE3_FOUND) add_subdirectory(${PROJECT_SOURCE_DIR}/orm_lib/src/sqlite3_impl/test) - endif() + endif(SQLITE3_FOUND) find_package(GTest) if(GTest_FOUND) message(STATUS "gtest found") diff --git a/README.md b/README.md index 538931bc..2884ad24 100755 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ ![](https://github.com/an-tao/drogon/wiki/images/drogon-white.jpg) [![Build Status](https://travis-ci.com/an-tao/drogon.svg?branch=master)](https://travis-ci.com/an-tao/drogon) +[![Build status](https://ci.appveyor.com/api/projects/status/12ffuf6j5vankgyb/branch/master?svg=true)](https://ci.appveyor.com/project/an-tao/drogon/branch/master) [![Total alerts](https://img.shields.io/lgtm/alerts/g/an-tao/drogon.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/an-tao/drogon/alerts/) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/an-tao/drogon.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/an-tao/drogon/context:cpp) [![Join the chat at https://gitter.im/drogon-web/community](https://badges.gitter.im/drogon-web/community.svg)](https://gitter.im/drogon-web/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) diff --git a/cmake/templates/DrogonConfig.cmake.in b/cmake/templates/DrogonConfig.cmake.in index 6e35a8cd..9cf0d1a9 100644 --- a/cmake/templates/DrogonConfig.cmake.in +++ b/cmake/templates/DrogonConfig.cmake.in @@ -9,10 +9,9 @@ @PACKAGE_INIT@ -if(NOT Trantor_FOUND) -# find trantor - find_package(Trantor CONFIG REQUIRED) -endif() +include(CMakeFindDependencyMacro) +find_dependency(Trantor) + # Our library dependencies (contains definitions for IMPORTED targets) diff --git a/cmake_modules/FindMySQL.cmake b/cmake_modules/FindMySQL.cmake index 2690ba42..dee53ba2 100644 --- a/cmake_modules/FindMySQL.cmake +++ b/cmake_modules/FindMySQL.cmake @@ -98,6 +98,9 @@ if(MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR) if(MSVC) set(MYSQL_CLIENT_LIBS ${MYSQL_CLIENT_LIBS} shlwapi) endif(MSVC) + if(WIN32) + set(MYSQL_CLIENT_LIBS ${MYSQL_CLIENT_LIBS} ws2_32) + endif(WIN32) message( STATUS diff --git a/drogon_ctl/CMakeLists.txt b/drogon_ctl/CMakeLists.txt index 98667a7e..83564157 100755 --- a/drogon_ctl/CMakeLists.txt +++ b/drogon_ctl/CMakeLists.txt @@ -43,11 +43,21 @@ if(WIN32) endif(WIN32) message(STATUS "bin:" ${INSTALL_BIN_DIR}) install(TARGETS drogon_ctl RUNTIME DESTINATION ${INSTALL_BIN_DIR}) -install(CODE "execute_process( \ +if(WIN32) + set(CTL_FILE $) + add_custom_command(TARGET drogon_ctl POST_BUILD + COMMAND ${CMAKE_COMMAND} + -DCTL_FILE=${CTL_FILE} + -DINSTALL_BIN_DIR=${INSTALL_BIN_DIR} + -P + ${CMAKE_CURRENT_SOURCE_DIR}/CopyDlls.cmake) +else(WIN32) + install(CODE "execute_process( \ COMMAND ${CMAKE_COMMAND} -E create_symlink \ ${INSTALL_BIN_DIR}/drogon_ctl \ ${INSTALL_BIN_DIR}/dg_ctl \ )") +endif(WIN32) set(ctl_targets _drogon_ctl drogon_ctl) set_property(TARGET ${ctl_targets} PROPERTY CXX_STANDARD ${DROGON_CXX_STANDARD}) set_property(TARGET ${ctl_targets} PROPERTY CXX_STANDARD_REQUIRED ON) diff --git a/drogon_ctl/CopyDlls.cmake b/drogon_ctl/CopyDlls.cmake new file mode 100644 index 00000000..a1c64bb9 --- /dev/null +++ b/drogon_ctl/CopyDlls.cmake @@ -0,0 +1,6 @@ +make_directory("${INSTALL_BIN_DIR}") +get_filename_component(CTL_PATH ${CTL_FILE} DIRECTORY) +file(GLOB DLL_FILES ${CTL_PATH}/*.dll) +file(COPY ${DLL_FILES} DESTINATION ${INSTALL_BIN_DIR}) +file(COPY ${CTL_FILE} DESTINATION ${INSTALL_BIN_DIR}) +file(RENAME ${INSTALL_BIN_DIR}/drogon_ctl.exe ${INSTALL_BIN_DIR}/dg_ctl.exe) \ No newline at end of file diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index d7f7d56c..b0df5883 100755 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -48,17 +48,6 @@ add_executable(pipelining_test simple_example_test/HttpPipeliningTest.cc) add_executable(websocket_test simple_example_test/WebSocketTest.cc) add_executable(multiple_ws_test simple_example_test/MultipleWsTest.cc) -if(NOT WIN32) - add_custom_command( - TARGET webapp POST_BUILD - COMMAND gzip - ARGS - -c - ${CMAKE_CURRENT_SOURCE_DIR}/simple_example/index.html - > - ${CMAKE_CURRENT_BINARY_DIR}/index.html.gz - VERBATIM) -endif(NOT WIN32) add_custom_command( TARGET webapp POST_BUILD COMMAND ${CMAKE_COMMAND} @@ -67,6 +56,7 @@ add_custom_command( ${PROJECT_SOURCE_DIR}/config.example.json ${PROJECT_SOURCE_DIR}/drogon.jpg ${CMAKE_CURRENT_SOURCE_DIR}/simple_example/index.html + ${CMAKE_CURRENT_SOURCE_DIR}/simple_example/index.html.gz ${PROJECT_SOURCE_DIR}/trantor/trantor/tests/server.pem $) diff --git a/examples/simple_example/index.html.gz b/examples/simple_example/index.html.gz new file mode 100644 index 0000000000000000000000000000000000000000..df2714d01aed6ecf9594421b2a51389deedf0c44 GIT binary patch literal 3691 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 /dev/null 2>&1 /dev/null || { - echo "MSVC's lib command not found." - echo "Make sure MSVC is installed and its bin folder is in your \$PATH." - exit 1 - } -fi - -if ! enabled stripping; then - strip="echo ignoring strip" -fi - -enabled msvc && libcmd="lib" || libcmd="echo ignoring lib" - -echo "# Automatically generated by configure" > config.mak -echo "PREFIX=$PREFIX" >> config.mak -echo "bindir=$bindir" >> config.mak -echo "libdir=$libdir" >> config.mak -echo "incdir=$incdir" >> config.mak -echo "AR=$ar" >> config.mak -echo "CC=$cc" >> config.mak -echo "RANLIB=$ranlib" >> config.mak -echo "STRIP=$strip" >> config.mak -echo "BUILD_STATIC=$static" >> config.mak -echo "BUILD_SHARED=$shared" >> config.mak -echo "BUILD_MSVC=$msvc" >> config.mak -echo "LIBCMD=$libcmd" >> config.mak - -echo "prefix: $PREFIX" -echo "bindir: $bindir" -echo "libdir: $libdir" -echo "incdir: $incdir" -echo "ar: $ar" -echo "cc: $cc" -echo "ranlib: $ranlib" -echo "strip: $strip" -echo "static: $static" -echo "shared: $shared" diff --git a/third_party/mman-win32/mman-win32.pro b/third_party/mman-win32/mman-win32.pro deleted file mode 100644 index b58b4d95..00000000 --- a/third_party/mman-win32/mman-win32.pro +++ /dev/null @@ -1,13 +0,0 @@ -QT -= core gui - -TARGET = mman -TEMPLATE = lib - -DEFINES += MMAN_LIBRARY_DLL -DEFINES += MMAN_LIBRARY - -HEADERS += \ - mman.h - -SOURCES += \ - mman.c diff --git a/third_party/mman-win32/mman.sln b/third_party/mman-win32/mman.sln deleted file mode 100644 index 69fb506f..00000000 --- a/third_party/mman-win32/mman.sln +++ /dev/null @@ -1,28 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mman", "mman.vcxproj", "{592F578E-6F24-47C0-9F6C-07BC9B730E27}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Debug|x64.ActiveCfg = Debug|x64 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Debug|x64.Build.0 = Debug|x64 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Debug|x86.ActiveCfg = Debug|Win32 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Debug|x86.Build.0 = Debug|Win32 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Release|x64.ActiveCfg = Release|x64 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Release|x64.Build.0 = Release|x64 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Release|x86.ActiveCfg = Release|Win32 - {592F578E-6F24-47C0-9F6C-07BC9B730E27}.Release|x86.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/third_party/mman-win32/mman.vcxproj b/third_party/mman-win32/mman.vcxproj deleted file mode 100644 index e8dffa2c..00000000 --- a/third_party/mman-win32/mman.vcxproj +++ /dev/null @@ -1,122 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - Debug - x64 - - - Release - x64 - - - - {592F578E-6F24-47C0-9F6C-07BC9B730E27} - Win32Proj - 8.1 - - - - Application - true - v140 - - - Application - false - v140 - - - StaticLibrary - true - v140 - - - StaticLibrary - false - v140 - - - - - - - - - - - - - - - - - - - - - true - - - true - - - - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - Level3 - ProgramDatabase - Disabled - - - MachineX86 - true - Console - - - - - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDLL - Level3 - ProgramDatabase - - - MachineX86 - true - Console - true - true - - - - - MultiThreadedDebug - - - - - MultiThreaded - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/third_party/mman-win32/mman.vcxproj.filters b/third_party/mman-win32/mman.vcxproj.filters deleted file mode 100644 index a08c8d55..00000000 --- a/third_party/mman-win32/mman.vcxproj.filters +++ /dev/null @@ -1,30 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav - - - - - Source Files - - - - - Header Files - - - - - - \ No newline at end of file diff --git a/third_party/mman-win32/mman.vcxproj.user b/third_party/mman-win32/mman.vcxproj.user deleted file mode 100644 index abe8dd89..00000000 --- a/third_party/mman-win32/mman.vcxproj.user +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/trantor b/trantor index e052988f..f9a4de58 160000 --- a/trantor +++ b/trantor @@ -1 +1 @@ -Subproject commit e052988f277d039e3392bd4d213a531e45b822a8 +Subproject commit f9a4de585fc996cb94c5edcadbec0d7d874a1aa1