0
0
mirror of https://github.com/netwide-assembler/nasm.git synced 2025-10-10 00:25:06 -04:00
Files
nasm/autoconf/m4/pa_csym.m4
H. Peter Anvin 2de413db32 autoconf: more autoconf library macro updates
More macro updates from the pa_autoconf library.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-22 17:02:58 -07:00

14 lines
613 B
Plaintext

dnl --------------------------------------------------------------------------
dnl PA_CSYM(prefix, string)
dnl
dnl Convert a (semi-) arbitrary string to a CPP symbol
dnl Convert non-C characters to underscore, except + which is converted
dnl to X (so C++ -> CXX). Unlike PA_SYM(), do not compact multiple
dnl underscores.
dnl --------------------------------------------------------------------------
AC_DEFUN([PA_CSYM],
[m4_bpatsubsts(m4_quote(m4_toupper(m4_normalize([$*]))),
[[ ]+],[],[\+],[X],[^\(.\)\([0123456789].*\)$],[[[\1_\2]]],
[[^ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_]],[_],
[^._\(.*\)_.$],[[[\1]]])])