From 5f832714d383497618a9305a70d47a0da0922c6c Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 18 Jan 2024 09:07:55 +0100 Subject: Simplify code using libcompat --- make.c | 5 +---- src/compat.h | 26 ++++++++++++++++++++++++++ src/grab.c | 6 +----- 3 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 src/compat.h diff --git a/make.c b/make.c index 81b6134..7214fc2 100644 --- a/make.c +++ b/make.c @@ -1,12 +1,12 @@ #include #include -#include #include #include #include #include #include "cbs.h" +#include "src/compat.h" #define CC "cc" #define CFLAGS "-Wall", "-Wextra", "-Wpedantic", "-Werror", "-pipe" @@ -85,9 +85,6 @@ main(int argc, char **argv) cmdadd(&c, CC, CFLAGS); cmdadd(&c, buf); -#ifdef CBS_IS_C23 - cmdadd(&c, "-DGRAB_IS_C23=1"); -#endif if (pflag) cmdadd(&c, "-DGRAB_DO_PCRE=1", "-lpcre2-posix"); if (debug) diff --git a/src/compat.h b/src/compat.h new file mode 100644 index 0000000..fedea6a --- /dev/null +++ b/src/compat.h @@ -0,0 +1,26 @@ +/* This compatibility header was generated by the libcompat gen script. + You can find it over at https://git.sr.ht/~mango/libcompat. */ + +#ifndef LIBCOMPAT_COMPAT_H +#define LIBCOMPAT_COMPAT_H + +#if __STDC_VERSION__ >= 202311L +# define LIBCOMPAT_IS_23 1 +#endif + +#if !LIBCOMPAT_IS_23 +# include +#endif + +#if !LIBCOMPAT_IS_23 +# ifndef NULL +# include +# endif +# define nullptr NULL +#endif + +#if !LIBCOMPAT_IS_23 +# define static_assert(e, ...) _Static_assert(e, ""__VA_ARGS__) +#endif + +#endif /* !LIBCOMPAT_COMPAT_H */ diff --git a/src/grab.c b/src/grab.c index 8df2684..b005c4a 100644 --- a/src/grab.c +++ b/src/grab.c @@ -7,11 +7,6 @@ #include #include #include -#if !GRAB_IS_C23 -# include -# include -# define nullptr NULL -#endif #if GRAB_DO_PCRE # include @@ -22,6 +17,7 @@ # endif #endif +#include "compat.h" #include "da.h" #define die(...) err(EXIT_FAILURE, __VA_ARGS__); -- cgit v1.2.3