This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] fixinclude for Tru64's PTHREAD_MUTEX_INITIALIZER


Roger Sayle wrote:
> 
> Tru64's pthread.h contains incorrect definitions of the initialization
> macros PTHREAD_MUTEX_INITIALIZER, PTHREAD_COND_INITIALIZER and related

Smells like Solaris.  :-)

> Ok for mainline and the 3.4 branch?

Yes, but you will need to protect the CVS keywords, or they'll
show up as the keywords from the "inclhack.def" file.  Not
what you want.  Some guidance for the select clause below,
the "test-text" I'll leave to you:

> +     select    = " \\* @\\(#\\)\\$RCSfile: pthread\\.h,v \\$"
> +                 " \\$Revision: 1\\.1\\.33\\.21 \\$ \\(DEC\\)"
> +                 " \\$Date: 2000/08/15 15:30:13 \\$";

select = ' \* @\(#\)\$'  'RCSfile: pthread\.h,v \$'
         ' \$'   'Revision: 1\.1\.33\.21 \$ \(DEC\)'
         ' \$'   'Date: 2000/08/15 15:30:13 \$';

Thank you! - Bruce

> +     mach      = "alpha*-dec-osf*";
> +     sed       = "s@MVALID\\(.*\\)A}@MVALID\\1A, 0, 0, 0, 0, 0, 0 }@\n"
> +                 "s@MVALID\\(.*\\)_}@MVALID\\1_, 0, 0, 0, 0 }@\n"
> +                 "s@CVALID\\(.*\\)A}@CVALID\\1A, 0, 0, 0, 0 }@\n"
> +                 "s@CVALID\\(.*\\)_}@CVALID\\1_, 0, 0 }@\n"
> +                 "s@WVALID\\(.*\\)A}@WVALID\\1A, 0, 0, 0, 0, 0, 0, 0, 0, 0 }@\n"
> +                 "s@WVALID\\(.*\\)_}@WVALID\\1_, 0, 0, 0, 0, 0, 0, 0 }@\n";
> +     test_text = "/*\n"
> +                 " * @(#)\\$RCSfile: pthread.h,v \\$ \\$Revision: 1.1.33.21"
> +                 " \\$ (DEC) \\$Date: 2000/08/15 15:30:13 \\$\n"
> +                 " */\n"
> + "#ifndef _PTHREAD_NOMETER_STATIC\n"
> + "# define PTHREAD_MUTEX_INITIALIZER \\\n"
> + "    {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA}\n"
> + "# define PTHREAD_COND_INITIALIZER \\\n"
> + "    {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA}\n"
> + "# define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_) \\\n"
> + "    {_PTHREAD_MSTATE_CONFIG, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_}\n"
> + "# define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_) \\\n"
> + "    {_PTHREAD_CSTATE_SLOW, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_}\n"
> + "#else\n"
> + "# define PTHREAD_MUTEX_INITIALIZER {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA}\n"
> + "# define PTHREAD_MUTEX_INITWITHNAME_NP(_n_,_a_) \\\n"
> + "    {0, _PTHREAD_MVALID | _PTHREAD_MVF_STA, _n_, _a_}\n"
> + "# define PTHREAD_COND_INITWITHNAME_NP(_n_,_a_) \\\n"
> + "    {0, _PTHREAD_CVALID | _PTHREAD_CVF_STA, _n_, _a_}\n"
> + "#endif\n\n"
> + "#define PTHREAD_RWLOCK_INITIALIZER {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA}\n"
> + "#define PTHREAD_RWLOCK_INITWITHNAME_NP(_n_,_a_) \\\n"
> + "        {_PTHREAD_RWVALID | _PTHREAD_RWVF_STA, _n_, _a_}\n";
> + };


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]