From e7a3b7d7611339f5abd9f1b9a5f4054f5b5c9cf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vedran=20Mileti=C4=87?= Date: Tue, 9 Jun 2020 23:06:19 +0200 Subject: [PATCH] Add support for Solaris Tested on illumos distribution OmniOS Community Edition. --- CMakeLists.txt | 2 +- build.sh | 2 +- drogon_ctl/version.cc | 3 +-- lib/src/SharedLibManager.cc | 8 ++++---- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 864e5a6e60..47bd783293 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -123,7 +123,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC trantor) if(${CMAKE_SYSTEM_NAME} STREQUAL "Haiku") target_link_libraries(${PROJECT_NAME} PRIVATE network) elseif (NOT WIN32 AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD") - target_link_libraries(${PROJECT_NAME} PRIVATE dl) + target_link_libraries(${PROJECT_NAME} PRIVATE dl $<$:socket>) elseif (WIN32) target_link_libraries(${PROJECT_NAME} PRIVATE shlwapi) endif () diff --git a/build.sh b/build.sh index f05c0dd053..b0b5ea8dd3 100755 --- a/build.sh +++ b/build.sh @@ -89,7 +89,7 @@ if [ -f /bin/ninja ]; then make_program=ninja cmake_gen='-GNinja' else - make_flags="$make_flags -j$parallel" + make_flags="$make_flags -j $parallel" fi if [ "$1" = "-t" ]; then diff --git a/drogon_ctl/version.cc b/drogon_ctl/version.cc index e477713762..0b15bbd282 100644 --- a/drogon_ctl/version.cc +++ b/drogon_ctl/version.cc @@ -18,7 +18,6 @@ #include #include -using namespace drogon_ctl; static const char banner[] = R"( _ __| |_ __ ___ __ _ ___ _ __ @@ -28,7 +27,7 @@ static const char banner[] = |___/ )"; -void version::handleCommand(std::vector ¶meters) +void drogon_ctl::version::handleCommand(std::vector ¶meters) { std::cout << banner << std::endl; std::cout << "A utility for drogon" << std::endl; diff --git a/lib/src/SharedLibManager.cc b/lib/src/SharedLibManager.cc index 5ff7ffdff9..ba68dccf15 100644 --- a/lib/src/SharedLibManager.cc +++ b/lib/src/SharedLibManager.cc @@ -107,7 +107,7 @@ void SharedLibManager::managerLibs() void *oldHandle = nullptr; if (dlMap_.find(filename) != dlMap_.end()) { -#if defined __linux__ || defined __HAIKU__ +#if defined __linux__ || defined __HAIKU__ || defined __sun if (st.st_mtim.tv_sec > dlMap_[filename].mTime.tv_sec) #elif defined _WIN32 @@ -168,7 +168,7 @@ void SharedLibManager::managerLibs() dlStat.handle = compileAndLoadLib(srcFile, oldHandle); } -#if defined __linux__ || defined __HAIKU__ +#if defined __linux__ || defined __HAIKU__ || defined __sun dlStat.mTime = st.st_mtim; #elif defined _WIN32 dlStat.mTime.tv_sec = st.st_mtime; @@ -236,7 +236,7 @@ void *SharedLibManager::compileAndLoadLib(const std::string &sourceFile, bool SharedLibManager::shouldCompileLib(const std::string &soFile, const struct stat &sourceStat) { -#if defined __linux__ || defined __HAIKU__ +#if defined __linux__ || defined __HAIKU__ || defined __sun auto sourceModifiedTime = sourceStat.st_mtim.tv_sec; #elif defined _WIN32 auto sourceModifiedTime = sourceStat.st_mtime; @@ -251,7 +251,7 @@ bool SharedLibManager::shouldCompileLib(const std::string &soFile, return true; } -#if defined __linux__ || defined __HAIKU__ +#if defined __linux__ || defined __HAIKU__ || defined __sun auto soModifiedTime = soStat.st_mtim.tv_sec; #elif defined _WIN32 auto soModifiedTime = soStat.st_mtime;