#!/bin/sh

set -e

# copy examples to temporary folder
cp -R /usr/share/doc/libmagicenum-dev/examples/* $AUTOPKGTEST_TMP

# create minimal CMake file
cat > $AUTOPKGTEST_TMP/CMakeLists.txt << EOL
cmake_minimum_required(VERSION 3.28)
project(magic-enum-test)

set(CMAKE_CXX_STANDARD 20)

find_package(magic_enum REQUIRED)
include_directories(\${magic_enum_INCLUDE_DIRS})

file(GLOB example_files "*.cpp")
foreach(example_cpp IN LISTS example_files)
    string(REGEX REPLACE ".*/(.*)\.cpp" "\\\\1" example_exec \${example_cpp})
    add_executable(\${example_exec} \${example_cpp})
endforeach()
EOL

# create and switch to build folder
mkdir $AUTOPKGTEST_TMP/build
cd $AUTOPKGTEST_TMP/build

# build examples
cmake .. -GNinja
ninja

# run examples
for example in $(find . -maxdepth 1 -type f -executable); do
    $example
done
