Skip to content

Commit

Permalink
Make iomgr package editable. (#94)
Browse files Browse the repository at this point in the history
  • Loading branch information
szmyd authored Aug 7, 2024
1 parent e2dce92 commit c736def
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 18 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ test_package/build
nosanitize/**

# Settings generated files and build files
generated/**
debug/**
release/**
cmake-*/**
Expand Down
37 changes: 22 additions & 15 deletions conanfile.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
from conan import ConanFile
from conan.errors import ConanInvalidConfiguration
from conan.tools.build import check_min_cppstd
from conan.tools.cmake import CMakeToolchain, CMakeDeps, CMake, cmake_layout
from conan.tools.cmake import CMakeToolchain, CMakeDeps, CMake
from conan.tools.files import copy
from os.path import join, exists

required_conan_version = ">=1.60.0"

class IOMgrConan(ConanFile):
name = "iomgr"
version = "11.3.8"
version = "11.3.9"

homepage = "https://github.com/eBay/IOManager"
description = "Asynchronous event manager"
Expand Down Expand Up @@ -95,11 +95,21 @@ def _download_grpc(self, folder):
def layout(self):
if self.options.grpc_support:
self._download_grpc(self.source_folder)
cmake_layout(self)

self.folders.source = "."
self.folders.build = join("build", str(self.settings.build_type))
self.folders.generators = join(self.folders.build, "generators")

self.cpp.source.includedirs = ["src/include"]

self.cpp.build.libdirs = ["src/lib"]
self.cpp.build.includedirs = ["src/include"]

self.cpp.package.libs = ["iomgr"]
self.cpp.package.includedirs = ["include"] # includedirs is already set to 'include' by
self.cpp.package.libdirs = ["lib"]

def generate(self):
if self.options.grpc_support:
self._download_grpc(self.source_folder)
# This generates "conan_toolchain.cmake" in self.generators_folder
tc = CMakeToolchain(self)
tc.variables["CONAN_CMAKE_SILENT_OUTPUT"] = "ON"
Expand Down Expand Up @@ -137,13 +147,10 @@ def package(self):
copy(self, "*.dll", self.build_folder, join(self.package_folder, "lib"), keep_path=False)

def package_info(self):
self.cpp_info.libs = ["iomgr"]
self.cpp_info.cxxflags.append("-fconcepts")
if self.settings.build_type == "Debug":
if self.options.sanitize:
self.cpp_info.sharedlinkflags.append("-fsanitize=address")
self.cpp_info.exelinkflags.append("-fsanitize=address")
self.cpp_info.sharedlinkflags.append("-fsanitize=undefined")
self.cpp_info.exelinkflags.append("-fsanitize=undefined")
elif self.options.coverage == 'True':
self.cpp_info.libs.append('gcov')
if self.options.sanitize:
self.cpp_info.sharedlinkflags.append("-fsanitize=address")
self.cpp_info.exelinkflags.append("-fsanitize=address")
self.cpp_info.sharedlinkflags.append("-fsanitize=undefined")
self.cpp_info.exelinkflags.append("-fsanitize=undefined")
elif self.options.coverage == 'True':
self.cpp_info.libs.append('gcov')
1 change: 1 addition & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ endif()

include_directories (BEFORE lib/)
include_directories (BEFORE include/)
include_directories (BEFORE ${CMAKE_CURRENT_BINARY_DIR}/include)
include_directories (BEFORE ${CMAKE_CURRENT_BINARY_DIR}/lib)

add_subdirectory (lib)
Expand Down
2 changes: 1 addition & 1 deletion src/lib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -60,5 +60,5 @@ endif()
target_link_libraries(iomgr ${IOMGR_LIB_DEPS})

include ("${sisl_INCLUDE_DIRS}/../cmake/settings_gen.cmake")
settings_gen_cpp($<TARGET_FILE:flatbuffers::flatc> ${CMAKE_CURRENT_BINARY_DIR}/generated iomgr_config iomgr_config.fbs)
settings_gen_cpp($<TARGET_FILE:flatbuffers::flatc> ${CMAKE_BINARY_DIR}/src/include/iomgr iomgr_config iomgr_config.fbs)
include_directories(${CMAKE_CURRENT_BINARY_DIR})
2 changes: 1 addition & 1 deletion src/lib/iomgr_config.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
#pragma once
#include <sisl/settings/settings.hpp>
#include <sisl/options/options.h>
#include "generated/iomgr_config_generated.h"
#include "iomgr/iomgr_config_generated.h"

SETTINGS_INIT(iomgrcfg::IomgrSettings, iomgr_config);

Expand Down

0 comments on commit c736def

Please sign in to comment.