From 2337bbf35d1ce8805685f1b7229f62f56461d8a3 Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Sun, 14 Jun 2020 17:32:29 +0200 Subject: [PATCH] Fix internal header include paths. (#475) * Fix internal header include paths. The extra leading "CLI/" part of include directives prevents the inclusion of CLI.hpp from a relative directory without an extra -I or /I compiler directive. * Fix single header generation script. Files included with "" should be relative to the header file location first. --- include/CLI/App.hpp | 16 ++++++++-------- include/CLI/CLI.hpp | 26 +++++++++++++------------- include/CLI/Config.hpp | 6 +++--- include/CLI/ConfigFwd.hpp | 4 ++-- include/CLI/Error.hpp | 2 +- include/CLI/Formatter.hpp | 4 ++-- include/CLI/FormatterFwd.hpp | 2 +- include/CLI/Option.hpp | 10 +++++----- include/CLI/Split.hpp | 4 ++-- include/CLI/Validators.hpp | 6 +++--- scripts/MakeSingleHeader.py | 3 ++- 11 files changed, 42 insertions(+), 41 deletions(-) diff --git a/include/CLI/App.hpp b/include/CLI/App.hpp index 2c756d65..8d47976e 100644 --- a/include/CLI/App.hpp +++ b/include/CLI/App.hpp @@ -20,14 +20,14 @@ #include // CLI Library includes -#include "CLI/ConfigFwd.hpp" -#include "CLI/Error.hpp" -#include "CLI/FormatterFwd.hpp" -#include "CLI/Macros.hpp" -#include "CLI/Option.hpp" -#include "CLI/Split.hpp" -#include "CLI/StringTools.hpp" -#include "CLI/TypeTools.hpp" +#include "ConfigFwd.hpp" +#include "Error.hpp" +#include "FormatterFwd.hpp" +#include "Macros.hpp" +#include "Option.hpp" +#include "Split.hpp" +#include "StringTools.hpp" +#include "TypeTools.hpp" namespace CLI { diff --git a/include/CLI/CLI.hpp b/include/CLI/CLI.hpp index 22e85aed..98fca548 100644 --- a/include/CLI/CLI.hpp +++ b/include/CLI/CLI.hpp @@ -9,28 +9,28 @@ // CLI Library includes // Order is important for combiner script -#include "CLI/Version.hpp" +#include "Version.hpp" -#include "CLI/Macros.hpp" +#include "Macros.hpp" -#include "CLI/StringTools.hpp" +#include "StringTools.hpp" -#include "CLI/Error.hpp" +#include "Error.hpp" -#include "CLI/TypeTools.hpp" +#include "TypeTools.hpp" -#include "CLI/Split.hpp" +#include "Split.hpp" -#include "CLI/ConfigFwd.hpp" +#include "ConfigFwd.hpp" -#include "CLI/Validators.hpp" +#include "Validators.hpp" -#include "CLI/FormatterFwd.hpp" +#include "FormatterFwd.hpp" -#include "CLI/Option.hpp" +#include "Option.hpp" -#include "CLI/App.hpp" +#include "App.hpp" -#include "CLI/Config.hpp" +#include "Config.hpp" -#include "CLI/Formatter.hpp" +#include "Formatter.hpp" diff --git a/include/CLI/Config.hpp b/include/CLI/Config.hpp index 8ef40552..5a982236 100644 --- a/include/CLI/Config.hpp +++ b/include/CLI/Config.hpp @@ -13,9 +13,9 @@ #include #include -#include "CLI/App.hpp" -#include "CLI/ConfigFwd.hpp" -#include "CLI/StringTools.hpp" +#include "App.hpp" +#include "ConfigFwd.hpp" +#include "StringTools.hpp" namespace CLI { diff --git a/include/CLI/ConfigFwd.hpp b/include/CLI/ConfigFwd.hpp index 49ca1b28..2546d135 100644 --- a/include/CLI/ConfigFwd.hpp +++ b/include/CLI/ConfigFwd.hpp @@ -12,8 +12,8 @@ #include #include -#include "CLI/Error.hpp" -#include "CLI/StringTools.hpp" +#include "Error.hpp" +#include "StringTools.hpp" namespace CLI { diff --git a/include/CLI/Error.hpp b/include/CLI/Error.hpp index 7841c92b..11feaedb 100644 --- a/include/CLI/Error.hpp +++ b/include/CLI/Error.hpp @@ -13,7 +13,7 @@ #include // CLI library includes -#include "CLI/StringTools.hpp" +#include "StringTools.hpp" namespace CLI { diff --git a/include/CLI/Formatter.hpp b/include/CLI/Formatter.hpp index 6ac4e4d1..8a8ba352 100644 --- a/include/CLI/Formatter.hpp +++ b/include/CLI/Formatter.hpp @@ -10,8 +10,8 @@ #include #include -#include "CLI/App.hpp" -#include "CLI/FormatterFwd.hpp" +#include "App.hpp" +#include "FormatterFwd.hpp" namespace CLI { diff --git a/include/CLI/FormatterFwd.hpp b/include/CLI/FormatterFwd.hpp index 4c4a5de0..362219e2 100644 --- a/include/CLI/FormatterFwd.hpp +++ b/include/CLI/FormatterFwd.hpp @@ -11,7 +11,7 @@ #include #include -#include "CLI/StringTools.hpp" +#include "StringTools.hpp" namespace CLI { diff --git a/include/CLI/Option.hpp b/include/CLI/Option.hpp index 826b5e1f..e9800028 100644 --- a/include/CLI/Option.hpp +++ b/include/CLI/Option.hpp @@ -15,11 +15,11 @@ #include #include -#include "CLI/Error.hpp" -#include "CLI/Macros.hpp" -#include "CLI/Split.hpp" -#include "CLI/StringTools.hpp" -#include "CLI/Validators.hpp" +#include "Error.hpp" +#include "Macros.hpp" +#include "Split.hpp" +#include "StringTools.hpp" +#include "Validators.hpp" namespace CLI { diff --git a/include/CLI/Split.hpp b/include/CLI/Split.hpp index 7e534732..6306404b 100644 --- a/include/CLI/Split.hpp +++ b/include/CLI/Split.hpp @@ -11,8 +11,8 @@ #include #include -#include "CLI/Error.hpp" -#include "CLI/StringTools.hpp" +#include "Error.hpp" +#include "StringTools.hpp" namespace CLI { namespace detail { diff --git a/include/CLI/Validators.hpp b/include/CLI/Validators.hpp index 9f47477d..bc916f86 100644 --- a/include/CLI/Validators.hpp +++ b/include/CLI/Validators.hpp @@ -6,9 +6,9 @@ #pragma once -#include "CLI/Macros.hpp" -#include "CLI/StringTools.hpp" -#include "CLI/TypeTools.hpp" +#include "Macros.hpp" +#include "StringTools.hpp" +#include "TypeTools.hpp" #include #include diff --git a/scripts/MakeSingleHeader.py b/scripts/MakeSingleHeader.py index 1163485a..1c438582 100755 --- a/scripts/MakeSingleHeader.py +++ b/scripts/MakeSingleHeader.py @@ -128,6 +128,7 @@ def MakeHeader( base_dir = os.path.abspath(os.path.join(DIR, include_dir)) main_header = os.path.join(base_dir, main_header) + header_dir = os.path.dirname(main_header) licence_file = os.path.abspath(os.path.join(DIR, "../LICENSE")) with open(licence_file) as f: @@ -138,7 +139,7 @@ def MakeHeader( include_files = includes_local.findall(header) - headers = [HeaderFile(base_dir, inc) for inc in include_files] + headers = [HeaderFile(header_dir, inc) for inc in include_files] single_header = reduce(add, headers) if macro is not None: