]> Savannah Git Hosting - gnulib.git/commitdiff
unimetadata/base: New module.
authorBruno Haible <bruno@clisp.org>
Tue, 20 Feb 2024 23:53:41 +0000 (00:53 +0100)
committerBruno Haible <bruno@clisp.org>
Tue, 20 Feb 2024 23:58:11 +0000 (00:58 +0100)
* lib/unimetadata.in.h: New file.
* m4/unimetadata_h.m4: New file.
* modules/unimetadata/base: New file.

ChangeLog
lib/unimetadata.in.h [new file with mode: 0644]
m4/unimetadata_h.m4 [new file with mode: 0644]
modules/unimetadata/base [new file with mode: 0644]

index 32985d0abb5eb8a2bcbdb4866d6b8cb9319b490d..0e2478fe5f24516a6dd1a72553deb430ab0fa001 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2024-02-20  Bruno Haible  <bruno@clisp.org>
+
+       unimetadata/base: New module.
+       * lib/unimetadata.in.h: New file.
+       * m4/unimetadata_h.m4: New file.
+       * modules/unimetadata/base: New file.
+
 2024-02-20  Collin Funk  <collin.funk1@gmail.com>
 
        maint.mk: Fix include header typo.
diff --git a/lib/unimetadata.in.h b/lib/unimetadata.in.h
new file mode 100644 (file)
index 0000000..4e23350
--- /dev/null
@@ -0,0 +1,39 @@
+/* Meta information about GNU libunistring.
+   Copyright (C) 2024 Free Software Foundation, Inc.
+
+   This file is free software: you can redistribute it and/or modify
+   it under the terms of the GNU Lesser General Public License as
+   published by the Free Software Foundation; either version 2.1 of the
+   License, or (at your option) any later version.
+
+   This file 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 Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#ifndef _UNIMETADATA_H
+#define _UNIMETADATA_H
+
+#if @HAVE_UNISTRING_WOE32DLL_H@
+# include <unistring/woe32dll.h>
+#else
+# define LIBUNISTRING_DLL_VARIABLE
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Supported Unicode version number: (major<<8) + minor  */
+extern @GNULIB_UNIMETADATA_UNICODE_VERSION_DLL_VARIABLE@ const int _libunistring_unicode_version;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _UNIMETADATA_H */
diff --git a/m4/unimetadata_h.m4 b/m4/unimetadata_h.m4
new file mode 100644 (file)
index 0000000..abdc06d
--- /dev/null
@@ -0,0 +1,42 @@
+# unimetadata_h.m4 serial 1
+dnl Copyright (C) 2024 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN_ONCE([gl_UNIMETADATA_H],
+[
+  dnl Ensure to expand the default settings once only, before all statements
+  dnl that occur in other macros.
+  AC_REQUIRE([gl_UNIMETADATA_H_DEFAULTS])
+])
+
+# gl_UNIMETADATA_MODULE_INDICATOR([modulename])
+# sets the shell variable that indicates the presence of the given module
+# to a C preprocessor expression that will evaluate to 1.
+# This macro invocation must not occur in macros that are AC_REQUIREd.
+AC_DEFUN([gl_UNIMETADATA_MODULE_INDICATOR],
+[
+  dnl Ensure to expand the default settings once only.
+  gl_UNIMETADATA_H_REQUIRE_DEFAULTS
+  gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+  dnl Define it also as a C macro, for the benefit of the unit tests.
+  gl_MODULE_INDICATOR_FOR_TESTS([$1])
+])
+
+# Initializes the default values for AC_SUBSTed shell variables.
+# This macro must not be AC_REQUIREd.  It must only be invoked, and only
+# outside of macros or in macros that are not AC_REQUIREd.
+AC_DEFUN([gl_UNIMETADATA_H_REQUIRE_DEFAULTS],
+[
+  m4_defun(GL_MODULE_INDICATOR_PREFIX[_UNIMETADATA_H_MODULE_INDICATOR_DEFAULTS], [
+    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNIMETADATA_UNICODE_VERSION_DLL_VARIABLE], ['LIBUNISTRING_DLL_VARIABLE'])
+  ])
+  m4_require(GL_MODULE_INDICATOR_PREFIX[_UNIMETADATA_H_MODULE_INDICATOR_DEFAULTS])
+  AC_REQUIRE([gl_UNIMETADATA_H_DEFAULTS])
+])
+
+AC_DEFUN([gl_UNIMETADATA_H_DEFAULTS],
+[
+  dnl Assume proper GNU behavior unless another module says otherwise.
+])
diff --git a/modules/unimetadata/base b/modules/unimetadata/base
new file mode 100644 (file)
index 0000000..e66c343
--- /dev/null
@@ -0,0 +1,37 @@
+Description:
+Base layer for libunistring meta information.
+
+Files:
+lib/unimetadata.in.h
+m4/libunistring-base.m4
+m4/unimetadata_h.m4
+
+Depends-on:
+gen-header
+
+configure.ac:
+gl_LIBUNISTRING_LIBHEADER([1.2], [unimetadata.h])
+gl_UNIMETADATA_H
+gl_UNIMETADATA_H_REQUIRE_DEFAULTS
+AC_PROG_MKDIR_P
+
+Makefile.am:
+BUILT_SOURCES += $(LIBUNISTRING_UNIMETADATA_H)
+
+unimetadata.h: unimetadata.in.h
+@NMD@  $(AM_V_GEN)$(MKDIR_P) '%reldir%'
+       $(gl_V_at)$(SED_HEADER_STDOUT) \
+             -e 's|@''HAVE_UNISTRING_WOE32DLL_H''@|$(HAVE_UNISTRING_WOE32DLL_H)|g' \
+             -e 's/@''GNULIB_UNIMETADATA_UNICODE_VERSION_DLL_VARIABLE''@/$(GNULIB_UNIMETADATA_UNICODE_VERSION_DLL_VARIABLE)/g' \
+             $(srcdir)/unimetadata.in.h > $@-t
+       $(AM_V_at)mv $@-t $@
+MOSTLYCLEANFILES += unimetadata.h unimetadata.h-t
+
+Include:
+"unimetadata.h"
+
+License:
+LGPLv2+
+
+Maintainer:
+all