From 8a1b68376d8cf518f9b256427d732c3dacd3cd97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ricardo=20Montan=CC=83ana?= Date: Thu, 17 Jul 2025 11:45:56 +0200 Subject: [PATCH] Update debug build --- CHANGELOG.md | 8 ++++++++ Makefile | 31 +++++++++++++++++++++++-------- tests/Discretizer_unittest.cpp | 2 +- 3 files changed, 32 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d2075f..b2313f6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.1.1] - 2025-07-17 + +### Internal Changes + +- Updated Libtorch to version 2.7.1 +- Updated ArffFiles library to version 1.2.1 +- Enhance CMake configuration for better compatibility + ## [2.1.0] - 2025-06-28 ### Added diff --git a/Makefile b/Makefile index 06f327e..41b19c9 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ SHELL := /bin/bash -.DEFAULT_GOAL := release +.DEFAULT_GOAL := help .PHONY: debug release install test conan-create viewcoverage lcov := lcov @@ -11,18 +11,18 @@ docscdir = docs define build_target @echo ">>> Building the project for $(1)..." @if [ -d $(2) ]; then rm -fr $(2); fi - @conan install . --build=missing -of $(2) -s build_type=$(1) + @conan install . --build=missing -of $(2) -s build_type=$(1) $(4) @cmake -S . -B $(2) -DCMAKE_TOOLCHAIN_FILE=$(2)/build/$(1)/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=$(1) -D$(3) @cmake --build $(2) --config $(1) -j 8 endef debug: ## Build Debug version of the library - @$(call build_target,"Debug","$(f_debug)", "ENABLE_TESTING=ON") + @$(call build_target,"Debug","$(f_debug)", "ENABLE_TESTING=ON", "-o enable_testing=True") release: ## Build Release version of the library - @$(call build_target,"Release","$(f_release)", "ENABLE_TESTING=OFF") + @$(call build_target,"Release","$(f_release)", "ENABLE_TESTING=OFF", "") -install: ## Install the project +install: ## Install the library @echo ">>> Installing the project..." @cmake --build $(f_release) --target install -j 8 @@ -31,7 +31,8 @@ test: ## Build Debug version and run tests @$(MAKE) debug; @cp -r tests/datasets $(f_debug)/tests/datasets @cd $(f_debug)/tests && ctest --output-on-failure -j 8 - @cd $(f_debug)/tests && $(lcov) --capture --directory ../ --demangle-cpp --ignore-errors source,source --ignore-errors mismatch --output-file coverage.info >/dev/null 2>&1; \ + @echo ">>> Generating coverage report..." + @cd $(f_debug)/tests && $(lcov) --capture --directory ../ --demangle-cpp --ignore-errors source,source --ignore-errors mismatch --ignore-errors inconsistent --output-file coverage.info >/dev/null 2>&1; \ $(lcov) --remove coverage.info '/usr/*' --output-file coverage.info >/dev/null 2>&1; \ $(lcov) --remove coverage.info 'lib/*' --output-file coverage.info >/dev/null 2>&1; \ $(lcov) --remove coverage.info 'libtorch/*' --output-file coverage.info >/dev/null 2>&1; \ @@ -66,5 +67,19 @@ conan-create: ## Create the conan package conan create . --build=missing -tf "" -s:a build_type=Debug -o "&:enable_testing=False" @echo ">>> Done" - - +help: ## Show help message + @IFS=$$'\n' ; \ + help_lines=(`fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##/:/'`); \ + printf "%s\n\n" "Usage: make [task]"; \ + printf "%-20s %s\n" "task" "help" ; \ + printf "%-20s %s\n" "------" "----" ; \ + for help_line in $${help_lines[@]}; do \ + IFS=$$':' ; \ + help_split=($$help_line) ; \ + help_command=`echo $${help_split[0]} | sed -e 's/^ *//' -e 's/ *$$//'` ; \ + help_info=`echo $${help_split[2]} | sed -e 's/^ *//' -e 's/ *$$//'` ; \ + printf '\033[36m'; \ + printf "%-20s %s" $$help_command ; \ + printf '\033[0m'; \ + printf "%s\n" $$help_info; \ + done \ No newline at end of file diff --git a/tests/Discretizer_unittest.cpp b/tests/Discretizer_unittest.cpp index 80b02b4..fe8cdbf 100644 --- a/tests/Discretizer_unittest.cpp +++ b/tests/Discretizer_unittest.cpp @@ -41,7 +41,7 @@ namespace mdlp { Discretizer* disc = new BinDisc(4, strategy_t::UNIFORM); auto version = disc->version(); delete disc; - EXPECT_EQ("2.1.0", version); + EXPECT_EQ("2.1.1", version); } TEST(Discretizer, BinIrisUniform) {