diff --git a/.gitignore b/.gitignore index 95c1dfbc91c152f09cef5be5ef16f01abfc199b4..66f5562db9405712c0f489f6a76768b6cb24b5ef 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ *~ /deps/build.log /docs/build/ +/jlcaosdb/build/ diff --git a/jlcaosdb/CMakeLists.txt b/jlcaosdb/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..579a1da689e6bc1ffe3b2fb3d68bc3b38c369cc0 --- /dev/null +++ b/jlcaosdb/CMakeLists.txt @@ -0,0 +1,24 @@ +project(JLCaosDB) + +cmake_minimum_required(VERSION 3.1) + +set(CMAKE_MACOSX_RPATH 1) +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") + +# Add local installation of libcaosdb to CMAKE_PREFIX_PATH +find_package(caosdb) + +find_package(JlCxx) +get_target_property(JlCxx_location JlCxx::cxxwrap_julia LOCATION) +get_filename_component(JlCxx_location ${JlCxx_location} DIRECTORY) +set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib;${JlCxx_location}") + +add_library(jlcaosdb SHARED jlcaosdb.cxx) + +# Append libcaosdb to this list +target_link_libraries(jlcaosdb JlCxx::cxxwrap_julia JlCxx::cxxwrap_julia_stl) + +install(TARGETS jlcaosdb + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib + RUNTIME DESTINATION bin) diff --git a/jlcaosdb/jlcaosdb.cxx b/jlcaosdb/jlcaosdb.cxx new file mode 100644 index 0000000000000000000000000000000000000000..15986d4fd18c894a2f662227dbc8a4591c90874c --- /dev/null +++ b/jlcaosdb/jlcaosdb.cxx @@ -0,0 +1,30 @@ +/* + * + * This file is a part of the CaosDB Project. + * + * Copyright (C) 2021 Florian Spreckelsen <f.spreckelsen@indiscale.com> + * Copyright (C) 2021 IndiScale GmbH <info@indiscale.com> + * + * This program is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * <https://www.gnu.org/licenses/>. + * + */ +#include <jlcxx/jlcxx.hpp> + +#include "caosdb/connection.h" + +JLCXX_MODULE define_julia_module(jlcxx::Module& mod) +{ + +}