diff --git a/CMakeLists.txt b/CMakeLists.txt index e342ff4..0a67423 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,59 +44,59 @@ endif() if (MULTI_STAGE_BUILD) - find_package(dpct_core REQUIRED) + find_package(dpct REQUIRED) else() find_package(Lemon REQUIRED) file(GLOB_RECURSE SOURCES src/*.cpp) file(GLOB_RECURSE HEADERS include/*.h) include_directories(${Lemon_INCLUDE_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/) - add_library(dpct_core SHARED ${SOURCES} ${HEADERS}) - target_link_libraries(dpct_core ${Lemon_LIBRARIES}) + add_library(dpct SHARED ${SOURCES} ${HEADERS}) + target_link_libraries(dpct ${Lemon_LIBRARIES}) - target_include_directories(dpct_core + target_include_directories(dpct PUBLIC $ $ ) - set_target_properties(dpct_core PROPERTIES - EXPORT_NAME dpct_core + set_target_properties(dpct PROPERTIES + EXPORT_NAME dpct ) # installation - install(TARGETS dpct_core - EXPORT dpct_coreTargets + install(TARGETS dpct + EXPORT dpctTargets ARCHIVE DESTINATION lib LIBRARY DESTINATION lib RUNTIME DESTINATION bin INCLUDES DESTINATION include ) install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/" - DESTINATION include/dpct_core + DESTINATION include/dpct FILES_MATCHING PATTERN "*.h" ) - install(EXPORT dpct_coreTargets - FILE dpct_coreTargets.cmake - DESTINATION lib/cmake/dpct_core + install(EXPORT dpctTargets + FILE dpctTargets.cmake + DESTINATION lib/cmake/dpct ) write_basic_package_version_file( - "${CMAKE_CURRENT_BINARY_DIR}/dpct_coreConfigVersion.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/dpctConfigVersion.cmake" VERSION 1.5.0 COMPATIBILITY SameMajorVersion ) configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/dpct_coreConfig.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/dpct_coreConfig.cmake" - INSTALL_DESTINATION lib/cmake/dpct_core + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/dpctConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/dpctConfig.cmake" + INSTALL_DESTINATION lib/cmake/dpct ) install(FILES - "${CMAKE_CURRENT_BINARY_DIR}/dpct_coreConfig.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/dpct_coreConfigVersion.cmake" - DESTINATION lib/cmake/dpct_core + "${CMAKE_CURRENT_BINARY_DIR}/dpctConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/dpctConfigVersion.cmake" + DESTINATION lib/cmake/dpct ) diff --git a/bin/CMakeLists.txt b/bin/CMakeLists.txt index 85be155..193cdce 100644 --- a/bin/CMakeLists.txt +++ b/bin/CMakeLists.txt @@ -13,7 +13,7 @@ file(GLOB BIN_SRCS *.cpp) foreach(src ${BIN_SRCS}) get_filename_component(bin_name ${src} NAME_WE) add_executable(${bin_name} ${src}) - target_link_libraries(${bin_name} dpct_core ${Boost_LIBRARIES}) + target_link_libraries(${bin_name} dpct ${Boost_LIBRARIES}) target_compile_definitions(${bin_name} PRIVATE -DBOOST_ALL_NO_LIB -DBOOST_ALL_DYN_LINK) install(TARGETS ${bin_name} ARCHIVE DESTINATION lib diff --git a/cmake/dpct_coreConfig.cmake.in b/cmake/dpctConfig.cmake.in similarity index 58% rename from cmake/dpct_coreConfig.cmake.in rename to cmake/dpctConfig.cmake.in index 2b40738..671fc85 100644 --- a/cmake/dpct_coreConfig.cmake.in +++ b/cmake/dpctConfig.cmake.in @@ -3,4 +3,4 @@ include(CMakeFindDependencyMacro) find_dependency(Lemon REQUIRED) -include("${CMAKE_CURRENT_LIST_DIR}/dpct_coreTargets.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/dpctTargets.cmake") diff --git a/conda-recipe/recipe.yaml b/conda-recipe/recipe.yaml index cce398c..c3550c7 100644 --- a/conda-recipe/recipe.yaml +++ b/conda-recipe/recipe.yaml @@ -9,7 +9,7 @@ source: outputs: - package: - name: dpct-core + name: libdpct version: ${{ version }} build: @@ -32,8 +32,31 @@ outputs: - lemon ${{ lemon }}* run_exports: weak: - - ${{ pin_subpackage("dpct-core", exact=True) }} + - ${{ pin_subpackage("libdpct", exact=True) }} + tests: + - script: + - if: not win + then: test -d ${PREFIX}/include/dpct + else: if not exist %LIBRARY_INC%\dpct exit 1 + - if: osx + then: test -f ${PREFIX}/lib/libdpct.dylib + - if: linux + then: test -f ${PREFIX}/lib/libdpct.so + - if: win + then: if not exist %LIBRARY_BIN%\dpct.dll exit 1 + - if: not win + then: test -f ${PREFIX}/lib/cmake/dpct/dpctTargets.cmake + else: if not exist %LIBRARY_LIB%\cmake\dpct\dpctTargets.cmake exit 1 + - if: not win + then: test -f ${PREFIX}/lib/cmake/dpct/dpctTargets-release.cmake + else: if not exist %LIBRARY_LIB%\cmake\dpct\dpctTargets-release.cmake exit 1 + - if: not win + then: test -f ${PREFIX}/lib/cmake/dpct/dpctConfig.cmake + else: if not exist %LIBRARY_LIB%\cmake\dpct\dpctConfig.cmake exit 1 + - if: not win + then: test -f ${PREFIX}/lib/cmake/dpct/dpctConfigVersion.cmake + else: if not exist %LIBRARY_LIB%\cmake\dpct\dpctConfigVersion.cmake exit 1 - package: name: dpct @@ -63,10 +86,10 @@ outputs: - pybind11 - lemon ${{ lemon }}* - python - - ${{ pin_subpackage("dpct-core", exact=True) }} + - ${{ pin_subpackage("libdpct", exact=True) }} run: - python - - ${{ pin_subpackage("dpct-core", upper_bound="x.x") }} + - ${{ pin_subpackage("libdpct", upper_bound="x.x") }} tests: - script: diff --git a/include/config.h b/include/config.h index 4e5a2f9..b0f3228 100644 --- a/include/config.h +++ b/include/config.h @@ -1,6 +1,6 @@ #pragma once #ifdef _MSC_VER -#ifdef dpct_core_EXPORTS +#ifdef dpct_EXPORTS #define DPCT_API __declspec(dllexport) #else #define DPCT_API __declspec(dllimport) diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index b8475d4..e21a89c 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -5,13 +5,14 @@ find_package(Python REQUIRED Interpreter Development) find_package(pybind11 CONFIG) # include external headers as system includes so we do not have to cope with their warnings -include_directories( SYSTEM ${PYTHON_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS} ) +include_directories(SYSTEM ${PYTHON_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS}) set(PYDPCT_SRCS pydpct.cpp pythongraphreader.cpp) -pybind11_add_module(dpct ${PYDPCT_SRCS}) -target_link_libraries(dpct PRIVATE dpct_core) -target_include_directories(dpct PRIVATE ${DPCT_CORE_INCLUDE_DIR}) +pybind11_add_module(dpct_python ${PYDPCT_SRCS}) +set_target_properties(dpct_python PROPERTIES OUTPUT_NAME dpct) +target_link_libraries(dpct_python PRIVATE dpct) +target_include_directories(dpct_python PRIVATE ${DPCT_CORE_INCLUDE_DIR}) -install(TARGETS dpct +install(TARGETS dpct_python LIBRARY DESTINATION ${Python_SITELIB} RUNTIME DESTINATION ${Python_SITELIB}) diff --git a/python/pydpct.cpp b/python/pydpct.cpp index 0c1164f..1113e31 100644 --- a/python/pydpct.cpp +++ b/python/pydpct.cpp @@ -2,11 +2,11 @@ #include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include #include "pythongraphreader.h" using namespace dpct; diff --git a/python/pythongraphreader.h b/python/pythongraphreader.h index 0cfb105..afd14c4 100644 --- a/python/pythongraphreader.h +++ b/python/pythongraphreader.h @@ -4,8 +4,8 @@ #include #include -#include -#include +#include +#include namespace dpct {