star-line

Structure for accelerating line importance sampling
git clone git://git.meso-star.fr/star-line.git
Log | Files | Refs | README | LICENSE

commit 9da782e0ef15fbcde3114b99a1479720e7c68d52
parent 592c93404c56ad86f05a48b8f1b5b8df81ed2b35
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Wed, 28 Jan 2026 12:05:13 +0100

Remove CMake support

POSIX make is now the only supported build system.

Update the README accordingly

Diffstat:
MREADME.md | 39++++++++++++++++++++-------------------
Dcmake/CMakeLists.txt | 116-------------------------------------------------------------------------------
2 files changed, 20 insertions(+), 135 deletions(-)

diff --git a/README.md b/README.md @@ -1,30 +1,31 @@ # Star-Line -Star-Line is a C library whose purpose is to manage spectral transitions -(lines). - -Star-Line relies on the [CMake](http://www.cmake.org) and the -[RCMake](https://gitlab.com/vaplv/rcmake/) packages to build. It also depends -on the [RSys](https://gitlab.com/vaplv/rsys/) and -[Star-HITRAN](https://gitlab.com/meso-star/star-hitran/) libraries. - -First ensure that CMake is installed on your system. Then install the RCMake -package as well as the aforementioned prerequisites. Finally generate the -project from the `cmake/CMakeLists.txt` file by appending to the -`CMAKE_PREFIX_PATH` variable the install directories of its dependencies. The -resulting project can be edited, built, tested and installed as any CMake -project. Refer to the [CMake](https://cmake.org/documentation) for further -informations on CMake. +Build an acceleration structure to speed up line importance sampling. + +## Requirements + +- C compiler (C99) +- POSIX make +- pkg-config +- Line By Line Utils +- RSys +- Star HITRAN + +## Installation + +Edit config.mk as needed, then run: + + make clean install ## Copyright notice Copyright (C) 2022 CNRS - LMD -Copyright (C) 2022 [|Meso|Star>](https://www.meso-star.com) (<contact@meso-star.com>) +Copyright (C) 2022 |Meso|Star> (<contact@meso-star.com>) Copyright (C) 2022 Université Paul Sabatier - IRIT Copyright (C) 2022 Université Paul Sabatier - Laplace ## License -Star-Line is free software released under the GPL v3+ license: GNU GPL version -3 or later. You are welcome to redistribute it under certain conditions; refer -to the COPYING file for details. +Star-Line is free software released under the GPL v3+ license: GNU GPL +version 3 or later. You are welcome to redistribute it under certain +conditions; refer to the COPYING file for details. diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt @@ -1,116 +0,0 @@ -# Copyright (C) 2022 CNRS - LMD -# Copyright (C) 2022 |Meso|Star> (contact@meso-star.com) -# Copyright (C) 2022 Université Paul Sabatier - IRIT -# Copyright (C) 2022 Université Paul Sabatier - Laplace -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -cmake_minimum_required(VERSION 3.1) -project(sln C) -enable_testing() - -set(SLN_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../src) -option(NO_TEST "Do not build tests" OFF) - -################################################################################ -# Check dependencies -################################################################################ -find_package(RCMake 0.4 REQUIRED) -find_package(RSys 0.12.1 REQUIRED) -find_package(StarHITRAN REQUIRED) -find_package(LBLU REQUIRED) - -set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${RCMAKE_SOURCE_DIR}) -include(rcmake) -include(rcmake_runtime) - -include_directories( - ${LBLU_INCLUDE_DIR} - ${RSys_INCLUDE_DIR} - ${StarHITRAN_INCLUDE_DIR}) - -################################################################################ -# Configure and define targets -################################################################################ -set(VERSION_MAJOR 0) -set(VERSION_MINOR 0) -set(VERSION_PATCH 0) -set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) - -set(SLN_FILES_SRC - sln_device.c - sln_faddeeva.c - sln_line.c - sln_log.c - sln_mixture.c - sln_polyline.c - sln_tree.c - sln_tree_build.c) -set(SLN_FILES_INC - sln_device_c.h - sln_line.h - sln_log.h - sln_mixture_c.h - sln_polyline.h) -set(SLN_FILES_INC_API - sln.h) - -set(SLN_FILES_DOC COPYING README.md) - -# Prepend each file in the `SLN_FILES_<SRC|INC>' list by `SLN_SOURCE_DIR' -rcmake_prepend_path(SLN_FILES_SRC ${SLN_SOURCE_DIR}) -rcmake_prepend_path(SLN_FILES_INC ${SLN_SOURCE_DIR}) -rcmake_prepend_path(SLN_FILES_INC_API ${SLN_SOURCE_DIR}) -rcmake_prepend_path(SLN_FILES_DOC ${PROJECT_SOURCE_DIR}/../) - -add_library(sln SHARED - ${SLN_FILES_SRC} ${SLN_FILES_INC} ${SLN_FILES_INC_API}) -target_link_libraries(sln LBLU RSys StarHITRAN m) - -set_target_properties(sln PROPERTIES - DEFINE_SYMBOL SLN_SHARED_BUILD - VERSION ${VERSION} - SOVERSION ${VERSION_MAJOR}) - -rcmake_setup_devel(sln StarLine ${VERSION} star/sln_version.h) - -################################################################################ -# Add tests -################################################################################ -if(NOT NO_TEST) - function(build_test _name) - add_executable(${_name} ${SLN_SOURCE_DIR}/${_name}.c) - target_link_libraries(${_name} sln RSys ${ARGN}) - endfunction() - - function(new_test _name) - build_test(${_name} ${ARGN}) - add_test(${_name} ${_name}) - endfunction() - - new_test(test_sln_device) - new_test(test_sln_mesh) - new_test(test_sln_mixture StarHITRAN) - new_test(test_sln_tree StarHITRAN) -endif() - -################################################################################ -# Define output & install directories -################################################################################ -install(TARGETS sln - ARCHIVE DESTINATION bin - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin) -install(FILES ${SLN_FILES_INC_API} DESTINATION include/star) -install(FILES ${SLN_FILES_DOC} DESTINATION share/doc/star-line)