On Tue, 22 Aug 2017 19:32:36 +0300 "Dmitry V. Levin" <l...@altlinux.org> wrote:
> On Tue, Aug 22, 2017 at 03:35:03PM +0300, Edgar Kaziakhmedov wrote: > > Since the defs.h contains unrelated set of functions which are > > redundant(and parhaps conflicting) for other binaries included in > > the strace package, part with quantifying the > > SUPPORTED_PERSONALITIES definition should be in separate file. > > > > * defs.h: Include "supported_personalities.h". > > (SUPPORTED_PERSONALITIES): Move ... > > * supported_personalities.h: ... to the new file. > > * Makefile.am (strace_SOURCES): Add it. > > > > Signed-off-by: Edgar Kaziakhmedov <edgar.kaziakhme...@virtuozzo.com> > > --- > > Makefile.am | 1 + > > defs.h | 19 ++--------------- > > supported_personalities.h | 54 > > +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 57 > > insertions(+), 17 deletions(-) create mode 100644 > > supported_personalities.h > > > > diff --git a/Makefile.am b/Makefile.am > > index 53115cd5..fefd3d29 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -286,6 +286,7 @@ strace_SOURCES = \ > > strace.c \ > > string_to_uint.h \ > > string_to_uint.c \ > > + supported_personalities.h \ > > swapon.c \ > > syscall.c \ > > sysctl.c \ > > diff --git a/defs.h b/defs.h > > index dddad0c9..f54d9251 100644 > > --- a/defs.h > > +++ b/defs.h > > @@ -59,6 +59,7 @@ > > #include "macros.h" > > #include "mpers_type.h" > > #include "string_to_uint.h" > > +#include "supported_personalities.h" > > #include "sysent.h" > > #include "xmalloc.h" > > > > @@ -137,25 +138,9 @@ extern char *stpcpy(char *dst, const char > > *src); # define ERESTART_RESTARTBLOCK 516 > > #endif > > > > -#if defined X86_64 > > -# define SUPPORTED_PERSONALITIES 3 > > +#if SUPPORTED_PERSONALITIES == 3 > > # define PERSONALITY2_WORDSIZE 4 > > # define PERSONALITY2_KLONGSIZE PERSONALITY0_KLONGSIZE > > -#elif defined AARCH64 \ > > - || defined POWERPC64 \ > > - || defined RISCV \ > > - || defined SPARC64 \ > > - || defined TILE \ > > - || defined X32 > > -# define SUPPORTED_PERSONALITIES 2 > > -#else > > -# define SUPPORTED_PERSONALITIES 1 > > -#endif > > - > > -#if defined TILE && defined __tilepro__ > > -# define DEFAULT_PERSONALITY 1 > > -#else > > -# define DEFAULT_PERSONALITY 0 > > #endif > > > > #define PERSONALITY0_WORDSIZE SIZEOF_LONG > > diff --git a/supported_personalities.h b/supported_personalities.h > > new file mode 100644 > > index 00000000..0c720215 > > --- /dev/null > > +++ b/supported_personalities.h > > @@ -0,0 +1,54 @@ > > +/* > > + * Copyright (c) 2001-2017 The strace developers. > > + * All rights reserved. > > + * > > + * Redistribution and use in source and binary forms, with or > > without > > + * modification, are permitted provided that the following > > conditions > > + * are met: > > + * 1. Redistributions of source code must retain the above > > copyright > > + * notice, this list of conditions and the following disclaimer. > > + * 2. Redistributions in binary form must reproduce the above > > copyright > > + * notice, this list of conditions and the following disclaimer > > in the > > + * documentation and/or other materials provided with the > > distribution. > > + * 3. The name of the author may not be used to endorse or promote > > products > > + * derived from this software without specific prior written > > permission. > > + * > > + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY > > EXPRESS OR > > + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED > > WARRANTIES > > + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > > DISCLAIMED. > > + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, > > + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES > > (INCLUDING, BUT > > + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; > > LOSS OF USE, > > + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > > ON ANY > > + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR > > TORT > > + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF > > THE USE OF > > + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH > > DAMAGE. > > + */ > > + > > +#ifndef STRACE_SUPPORTED_PERSONALITIES > > +#define STRACE_SUPPORTED_PERSONALITIES > > STRACE_SUPPORTED_PERSONALITIES_H? > > > + > > +#ifdef HAVE_CONFIG_H > > +# include "config.h" > > +#endif > > Is it needed in this header file? > > Yes, to detect X86_64 definituon, isn't it?
pgpV_DcSkE3hF.pgp
Description: OpenPGP digital signature
------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel