diff options
Diffstat (limited to 'build-aux/makecounter.sh')
-rwxr-xr-x | build-aux/makecounter.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/build-aux/makecounter.sh b/build-aux/makecounter.sh new file mode 100755 index 00000000000..a63fcbb7c61 --- /dev/null +++ b/build-aux/makecounter.sh @@ -0,0 +1,43 @@ +#!/bin/sh +# Generate or update a C file containing an increasing counter +# variable. +# +# Copyright (C) 2023-2024 Free Software Foundation, Inc. +# +# This file is part of GNU Emacs. GNU Emacs is free software: you can +# redistribute it and/or modify it under the terms of the GNU General +# Public License as published by the Free Software Foundation, either +# version 3 of the License, or (at your option) any later version. +# +# GNU Emacs 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 +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. + +set -e + +curcount= +if test -f "$1"; then + curcount=`cat "$1" | grep = | cut -d= -f2 \ + | sed -e 's/;//' -e 's/ //'` +fi + +curcount=`expr 1 + $curcount 2>/dev/null || echo 0` + +cat > $1 <<EOF +/* Generated automatically by makecounter.sh. Do not edit! */ + +#include <config.h> + +#ifdef HAVE_ANDROID +#define EXPORT __attribute__ ((visibility ("default"))) +#endif /* HAVE_ANDROID */ + +#ifdef EXPORT +EXPORT +#endif /* EXPORT */ +int emacs_shortlisp_counter = $curcount; +EOF |