From patchwork Mon Aug 5 19:34:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 170613 Delivered-To: patch@linaro.org Received: by 2002:a92:512:0:0:0:0:0 with SMTP id q18csp4687490ile; Mon, 5 Aug 2019 12:34:55 -0700 (PDT) X-Google-Smtp-Source: APXvYqxCJU5NSQYw16/3qtpzKFMNd8Y8FqywU80OiyJ5Y0Kce2JfKjKnqpUu6sSPnymnW08QQyIT X-Received: by 2002:a17:90a:6546:: with SMTP id f6mr19506662pjs.11.1565033694970; Mon, 05 Aug 2019 12:34:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565033694; cv=none; d=google.com; s=arc-20160816; b=uX3En9uux/18q6hmrQmOZOGWmrGEryoYEOx4O7pJPxqclOWwCtssIgEbM/rGK4+Mkf uEyPIl+tHKjZxppqqKJNfvZh9Y/31d6HCfXd9yIYlO3XgwOjdKFLa+z1VXufRki6nvO+ Nw79YO02fUKE8smLigeBM7cMGI4+hgBWsK5uyNN3S0lZr0Z/603Gm8np4td3oBEbsYlG 1CZ9CJHLVCRTwWKQjRMyFO/lDUcqqQedVLLIraDQmcwbDsDbHWVToAtd0esiZmE2kbpp KWeehsrG+TGP7qtjn6bvcZ8KVD49Xmv9xayyr3dcNe1bnOSjkhvEHaKVNeedck9Sm8S6 H8Lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:message-id:date:to:from:dkim-signature:delivered-to; bh=ralP/eo1miqUoauqEixAN6yoOnPEn6NSPQeBsvaUrdM=; b=no2KE9s2yJwkzSEPlBZ+slfBBxeZCH6E7HAhOJcNViBlokScUQr6OQywxm7SyOUUvi ZM2wHsUfzy6j7J4eHhtdQ8sikiIhE2NUIP4rcalVhCNM4gS8t0HNHb/vL5Fcl0UBcSeg EO2iw2PmcIAXK/zqj/GFZSno4enu2yhMkke5obLPJzXoTiNsnpknn6YT3Q0CnD4DGAbs /lp9EUiwRr+Jy54ZuUn87dVvcb/1VBvdLZaF/aS9JXumjzapbS5t7Z5WTgETtYC51tl+ ppK4ija/ZoD/nYF8E61QC5ySpBD+F6Ih+7cxVuKMf1XquKPG6awHnhF3gCM9uMs8h5mf /fpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=bEsGP7bZ; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id s18si41065483plp.128.2019.08.05.12.34.54; Mon, 05 Aug 2019 12:34:54 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=bEsGP7bZ; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from ec2-34-214-78-129.us-west-2.compute.amazonaws.com (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id 426627F2FD; Mon, 5 Aug 2019 19:34:48 +0000 (UTC) X-Original-To: openembedded-core@lists.openembedded.org Delivered-To: openembedded-core@lists.openembedded.org Received: from mail-pg1-f180.google.com (mail-pg1-f180.google.com [209.85.215.180]) by mail.openembedded.org (Postfix) with ESMTP id 71D026B5C5 for ; Mon, 5 Aug 2019 19:34:46 +0000 (UTC) Received: by mail-pg1-f180.google.com with SMTP id n4so4970783pgv.2 for ; Mon, 05 Aug 2019 12:34:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=mNVdMMPzmShfLRLabYBEW6F4XIdDyYRA8ax+fGhGFg0=; b=bEsGP7bZpbHQ+35nMiUj9Vgv5j+oOW3zX65eG/bs3bFN4dWsMWAEDtayS3uCS2egCU Jh8mLT5uYl3z+rJOuxUDeKs4VEkJyM/kGzk4DBLHu3ql0OmBy3xvymjHNbAtov5284PK ZbGYlM2o4wUMmHbq4IqKcZDT0QZfGcokYY2zBFvzF041AWFJi4oUs115kMrwZxJVCBE4 g047SglyinzHmSk+sGwkbFQiIpjFCrhUn9b0g0zLBflZx55KKZ2js+KYp0xODJ1tQJq6 MaZ5jFU/LK194O3U8yREm1RIsxxrs+8zXkD9wa7Pbo7QLqtj4Uw2Dj/BnaXlJxenWhi/ 30pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=mNVdMMPzmShfLRLabYBEW6F4XIdDyYRA8ax+fGhGFg0=; b=spx5k9a7heOs1w7ZO4MOoLc5TPfRKHuRAvKHeKAx5Sw0ZML6u+bNeiOz/PIVGQsF7C MnDSIdvsJqC39dXjj4wcr7ZjHflnZEODcfVKxS5tdQhtQsLgaPJg5jUSrDuvguv1EI3j iopdMO9qr6Oisj04r9oB4a72li7iB3SgbVeeFQ28dODpInRh2ZOmMAXz4qUgcxn0K7tE jq+ts+COjZ1oAOakP//yZIeUrKfuUyTkYYHfKhhffNjRXue/ad53bcIcKrvKhix+SPPV gyvVUYrC3U3fZdgL9QfuTF7XguGM5K0SDcxube1Wj/tYB5/17MmW/0TfMp4J8nduGhrT D17g== X-Gm-Message-State: APjAAAWM4/6rfNeP0TsPJMnqjbD/AdQV/31lyIDOeTHD2S8km8Ic0He1 yP68RuzL+v/iqr8flVSZtqzP7lKrJCc= X-Received: by 2002:a17:90a:8a15:: with SMTP id w21mr19816210pjn.134.1565033686263; Mon, 05 Aug 2019 12:34:46 -0700 (PDT) Received: from apollo.hsd1.ca.comcast.net (c-73-71-176-3.hsd1.ca.comcast.net. [73.71.176.3]) by smtp.gmail.com with ESMTPSA id j10sm51904961pfn.188.2019.08.05.12.34.45 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 05 Aug 2019 12:34:45 -0700 (PDT) From: Khem Raj To: openembedded-core@lists.openembedded.org Date: Mon, 5 Aug 2019 12:34:29 -0700 Message-Id: <20190805193431.32053-1-raj.khem@gmail.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 Subject: [OE-core] [PATCH 1/3] groff: Fix math.h inclusion from system headers issue X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: openembedded-core-bounces@lists.openembedded.org Errors-To: openembedded-core-bounces@lists.openembedded.org groff has system headers overrides in its sourcecode which it generates as fallbacks but in some cases when a system header includes math.h via include <> directive it lands in the override header and causes compile issues, seen with clang+libc++, this patch makes sure that right defines are available before including it Signed-off-by: Khem Raj --- .../groff/files/0001-Include-config.h.patch | 1228 +++++++++++++++++ meta/recipes-extended/groff/groff_1.22.4.bb | 1 + 2 files changed, 1229 insertions(+) create mode 100644 meta/recipes-extended/groff/files/0001-Include-config.h.patch -- 2.22.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core diff --git a/meta/recipes-extended/groff/files/0001-Include-config.h.patch b/meta/recipes-extended/groff/files/0001-Include-config.h.patch new file mode 100644 index 0000000000..348a61d9df --- /dev/null +++ b/meta/recipes-extended/groff/files/0001-Include-config.h.patch @@ -0,0 +1,1228 @@ +From 6cfa9f8126c1d6ec26f120d273e714fb19108873 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 4 Aug 2019 16:32:41 -0700 +Subject: [PATCH] Include config.h + +This helps avoid the include conflicts where is including + and since -I./lib is used and a local math.h wrapper is +residing in there, the build breaks since stdlib.h really wants the +standard system math.h to be included, this ensures that right macros +are predefined and included before stdlib.h is included + +fixes +In file included from src/libs/libgroff/assert.cpp:20: +In file included from TOPDIR/build/tmp/work/aarch64-yoe-linux-musl/groff/1.22.4-r0/recipe-sysroot/usr/include/c++/v1/stdlib.h:100: +./lib/math.h:38:3: error: "Please include config.h first." + #error "Please include config.h first." + ^ +./lib/math.h:40:1: error: unknown type name '_GL_INLINE_HEADER_BEGIN' + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + src/libs/libgroff/assert.cpp | 4 + + src/libs/libgroff/curtime.cpp | 4 + + src/libs/libgroff/device.cpp | 4 + + src/libs/libgroff/error.cpp | 4 + + src/libs/libgroff/fatal.cpp | 4 + + src/libs/libgroff/string.cpp | 4 + + src/libs/libgroff/strsave.cpp | 4 + + src/preproc/eqn/eqn.cpp | 450 ++++++++++++++++++---------------- + src/preproc/eqn/eqn.hpp | 12 +- + src/preproc/eqn/eqn.ypp | 4 + + src/preproc/eqn/other.cpp | 4 + + src/preproc/eqn/text.cpp | 4 + + src/preproc/pic/object.cpp | 4 + + 13 files changed, 285 insertions(+), 221 deletions(-) + +diff --git a/src/libs/libgroff/assert.cpp b/src/libs/libgroff/assert.cpp +index aceed05..97780d6 100644 +--- a/src/libs/libgroff/assert.cpp ++++ b/src/libs/libgroff/assert.cpp +@@ -16,6 +16,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + #include "assert.h" +diff --git a/src/libs/libgroff/curtime.cpp b/src/libs/libgroff/curtime.cpp +index 72fe067..9ddba08 100644 +--- a/src/libs/libgroff/curtime.cpp ++++ b/src/libs/libgroff/curtime.cpp +@@ -15,6 +15,10 @@ for more details. + The GNU General Public License version 2 (GPL2) is available in the + internet at . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + #include +diff --git a/src/libs/libgroff/device.cpp b/src/libs/libgroff/device.cpp +index 0d28b85..c211f85 100644 +--- a/src/libs/libgroff/device.cpp ++++ b/src/libs/libgroff/device.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include "device.h" + #include "defs.h" +diff --git a/src/libs/libgroff/error.cpp b/src/libs/libgroff/error.cpp +index 9a18803..7b63d3d 100644 +--- a/src/libs/libgroff/error.cpp ++++ b/src/libs/libgroff/error.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + #include +diff --git a/src/libs/libgroff/fatal.cpp b/src/libs/libgroff/fatal.cpp +index c0dcb35..fd6003e 100644 +--- a/src/libs/libgroff/fatal.cpp ++++ b/src/libs/libgroff/fatal.cpp +@@ -16,6 +16,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + + #define FATAL_ERROR_EXIT_CODE 3 +diff --git a/src/libs/libgroff/string.cpp b/src/libs/libgroff/string.cpp +index 46c015c..449f3a6 100644 +--- a/src/libs/libgroff/string.cpp ++++ b/src/libs/libgroff/string.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + + #include "lib.h" +diff --git a/src/libs/libgroff/strsave.cpp b/src/libs/libgroff/strsave.cpp +index f95c05e..d875045 100644 +--- a/src/libs/libgroff/strsave.cpp ++++ b/src/libs/libgroff/strsave.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + +diff --git a/src/preproc/eqn/eqn.cpp b/src/preproc/eqn/eqn.cpp +index 4ede465..fdd9484 100644 +--- a/src/preproc/eqn/eqn.cpp ++++ b/src/preproc/eqn/eqn.cpp +@@ -1,8 +1,9 @@ +-/* A Bison parser, made by GNU Bison 3.2. */ ++/* A Bison parser, made by GNU Bison 3.4.1. */ + + /* Bison implementation for Yacc-like parsers in C + +- Copyright (C) 1984, 1989-1990, 2000-2015, 2018 Free Software Foundation, Inc. ++ Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, ++ Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -47,7 +48,7 @@ + #define YYBISON 1 + + /* Bison version. */ +-#define YYBISON_VERSION "3.2" ++#define YYBISON_VERSION "3.4.1" + + /* Skeleton name. */ + #define YYSKELETON_NAME "yacc.c" +@@ -65,7 +66,11 @@ + + + /* First part of user prologue. */ +-#line 18 "../src/preproc/eqn/eqn.ypp" /* yacc.c:338 */ ++#line 18 "src/preproc/eqn/eqn.ypp" ++ ++#if HAVE_CONFIG_H ++# include ++#endif + + #include + #include +@@ -77,7 +82,8 @@ extern int non_empty_flag; + int yylex(); + void yyerror(const char *); + +-#line 81 "src/preproc/eqn/eqn.cpp" /* yacc.c:338 */ ++#line 86 "src/preproc/eqn/eqn.cpp" ++ + # ifndef YY_NULLPTR + # if defined __cplusplus + # if 201103L <= __cplusplus +@@ -98,8 +104,8 @@ void yyerror(const char *); + # define YYERROR_VERBOSE 0 + #endif + +-/* In a future release of Bison, this section will be replaced +- by #include "y.tab.h". */ ++/* Use api.header.include to #include this header ++ instead of duplicating it here. */ + #ifndef YY_YY_SRC_PREPROC_EQN_EQN_HPP_INCLUDED + # define YY_YY_SRC_PREPROC_EQN_EQN_HPP_INCLUDED + /* Debug traces. */ +@@ -237,10 +243,9 @@ extern int yydebug; + + /* Value type. */ + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +- + union YYSTYPE + { +-#line 30 "../src/preproc/eqn/eqn.ypp" /* yacc.c:353 */ ++#line 34 "src/preproc/eqn/eqn.ypp" + + char *str; + box *b; +@@ -249,9 +254,9 @@ union YYSTYPE + int n; + column *col; + +-#line 253 "src/preproc/eqn/eqn.cpp" /* yacc.c:353 */ +-}; ++#line 258 "src/preproc/eqn/eqn.cpp" + ++}; + typedef union YYSTYPE YYSTYPE; + # define YYSTYPE_IS_TRIVIAL 1 + # define YYSTYPE_IS_DECLARED 1 +@@ -366,6 +371,8 @@ typedef short yytype_int16; + #endif + + ++#define YY_ASSERT(E) ((void) (0 && (E))) ++ + #if ! defined yyoverflow || YYERROR_VERBOSE + + /* The parser invokes alloca or malloc; define the necessary symbols. */ +@@ -508,16 +515,16 @@ union yyalloc + /* YYNSTATES -- Number of states. */ + #define YYNSTATES 142 + +-/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned +- by yylex, with out-of-bounds checking. */ + #define YYUNDEFTOK 2 + #define YYMAXUTOK 315 + ++/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM ++ as returned by yylex, with out-of-bounds checking. */ + #define YYTRANSLATE(YYX) \ + ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) + + /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM +- as returned by yylex, without out-of-bounds checking. */ ++ as returned by yylex. */ + static const yytype_uint8 yytranslate[] = + { + 0, 2, 2, 2, 2, 2, 2, 2, 2, 63, +@@ -558,14 +565,14 @@ static const yytype_uint8 yytranslate[] = + /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ + static const yytype_uint16 yyrline[] = + { +- 0, 121, 121, 123, 128, 130, 141, 143, 145, 150, +- 152, 154, 156, 158, 163, 165, 167, 169, 174, 176, +- 181, 183, 185, 190, 192, 194, 196, 198, 200, 202, +- 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, +- 224, 226, 228, 230, 232, 234, 236, 238, 240, 242, +- 244, 246, 248, 250, 252, 254, 259, 269, 271, 276, +- 278, 283, 285, 290, 292, 297, 299, 304, 306, 308, +- 310, 314, 316, 321, 323, 325 ++ 0, 125, 125, 127, 132, 134, 145, 147, 149, 154, ++ 156, 158, 160, 162, 167, 169, 171, 173, 178, 180, ++ 185, 187, 189, 194, 196, 198, 200, 202, 204, 206, ++ 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, ++ 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, ++ 248, 250, 252, 254, 256, 258, 263, 273, 275, 280, ++ 282, 287, 289, 294, 296, 301, 303, 308, 310, 312, ++ 314, 318, 320, 325, 327, 329 + }; + #endif + +@@ -818,22 +825,22 @@ static const yytype_uint8 yyr2[] = + + #define YYRECOVERING() (!!yyerrstatus) + +-#define YYBACKUP(Token, Value) \ +-do \ +- if (yychar == YYEMPTY) \ +- { \ +- yychar = (Token); \ +- yylval = (Value); \ +- YYPOPSTACK (yylen); \ +- yystate = *yyssp; \ +- goto yybackup; \ +- } \ +- else \ +- { \ +- yyerror (YY_("syntax error: cannot back up")); \ +- YYERROR; \ +- } \ +-while (0) ++#define YYBACKUP(Token, Value) \ ++ do \ ++ if (yychar == YYEMPTY) \ ++ { \ ++ yychar = (Token); \ ++ yylval = (Value); \ ++ YYPOPSTACK (yylen); \ ++ yystate = *yyssp; \ ++ goto yybackup; \ ++ } \ ++ else \ ++ { \ ++ yyerror (YY_("syntax error: cannot back up")); \ ++ YYERROR; \ ++ } \ ++ while (0) + + /* Error token number */ + #define YYTERROR 1 +@@ -948,7 +955,7 @@ yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + yystos[yyssp[yyi + 1 - yynrhs]], +- &(yyvsp[(yyi + 1) - (yynrhs)]) ++ &yyvsp[(yyi + 1) - (yynrhs)] + ); + YYFPRINTF (stderr, "\n"); + } +@@ -1052,7 +1059,10 @@ yytnamerr (char *yyres, const char *yystr) + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; +- /* Fall through. */ ++ else ++ goto append; ++ ++ append: + default: + if (yyres) + yyres[yyn] = *yyp; +@@ -1148,10 +1158,10 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yyarg[yycount++] = yytname[yyx]; + { + YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); +- if (! (yysize <= yysize1 +- && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) ++ if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) ++ yysize = yysize1; ++ else + return 2; +- yysize = yysize1; + } + } + } +@@ -1175,9 +1185,10 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + + { + YYSIZE_T yysize1 = yysize + yystrlen (yyformat); +- if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) ++ if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) ++ yysize = yysize1; ++ else + return 2; +- yysize = yysize1; + } + + if (*yymsg_alloc < yysize) +@@ -1303,23 +1314,33 @@ yyparse (void) + yychar = YYEMPTY; /* Cause a token to be read. */ + goto yysetstate; + ++ + /*------------------------------------------------------------. +-| yynewstate -- Push a new state, which is found in yystate. | ++| yynewstate -- push a new state, which is found in yystate. | + `------------------------------------------------------------*/ +- yynewstate: ++yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + +- yysetstate: ++ ++/*--------------------------------------------------------------------. ++| yynewstate -- set current state (the top of the stack) to yystate. | ++`--------------------------------------------------------------------*/ ++yysetstate: ++ YYDPRINTF ((stderr, "Entering state %d\n", yystate)); ++ YY_ASSERT (0 <= yystate && yystate < YYNSTATES); + *yyssp = (yytype_int16) yystate; + + if (yyss + yystacksize - 1 <= yyssp) ++#if !defined yyoverflow && !defined YYSTACK_RELOCATE ++ goto yyexhaustedlab; ++#else + { + /* Get the current used size of the three stacks, in elements. */ + YYSIZE_T yysize = (YYSIZE_T) (yyssp - yyss + 1); + +-#ifdef yyoverflow ++# if defined yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into +@@ -1338,10 +1359,7 @@ yyparse (void) + yyss = yyss1; + yyvs = yyvs1; + } +-#else /* no yyoverflow */ +-# ifndef YYSTACK_RELOCATE +- goto yyexhaustedlab; +-# else ++# else /* defined YYSTACK_RELOCATE */ + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + goto yyexhaustedlab; +@@ -1357,12 +1375,11 @@ yyparse (void) + goto yyexhaustedlab; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); +-# undef YYSTACK_RELOCATE ++# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } + # endif +-#endif /* no yyoverflow */ + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; +@@ -1373,19 +1390,18 @@ yyparse (void) + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } +- +- YYDPRINTF ((stderr, "Entering state %d\n", yystate)); ++#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ + + if (yystate == YYFINAL) + YYACCEPT; + + goto yybackup; + ++ + /*-----------. + | yybackup. | + `-----------*/ + yybackup: +- + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + +@@ -1443,7 +1459,6 @@ yybackup: + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END +- + goto yynewstate; + + +@@ -1458,7 +1473,7 @@ yydefault: + + + /*-----------------------------. +-| yyreduce -- Do a reduction. | ++| yyreduce -- do a reduction. | + `-----------------------------*/ + yyreduce: + /* yyn is the number of a rule to reduce with. */ +@@ -1478,20 +1493,20 @@ yyreduce: + YY_REDUCE_PRINT (yyn); + switch (yyn) + { +- case 3: +-#line 124 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++ case 3: ++#line 128 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].b)->top_level(); non_empty_flag = 1; } +-#line 1485 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1500 "src/preproc/eqn/eqn.cpp" + break; + + case 4: +-#line 129 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 133 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1491 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1506 "src/preproc/eqn/eqn.cpp" + break; + + case 5: +-#line 131 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 135 "src/preproc/eqn/eqn.ypp" + { + list_box *lb = (yyvsp[-1].b)->to_list_box(); + if (!lb) +@@ -1499,436 +1514,437 @@ yyreduce: + lb->append((yyvsp[0].b)); + (yyval.b) = lb; + } +-#line 1503 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1518 "src/preproc/eqn/eqn.cpp" + break; + + case 6: +-#line 142 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 146 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1509 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1524 "src/preproc/eqn/eqn.cpp" + break; + + case 7: +-#line 144 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 148 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_mark_box((yyvsp[0].b)); } +-#line 1515 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1530 "src/preproc/eqn/eqn.cpp" + break; + + case 8: +-#line 146 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 150 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_lineup_box((yyvsp[0].b)); } +-#line 1521 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1536 "src/preproc/eqn/eqn.cpp" + break; + + case 9: +-#line 151 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 155 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1527 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1542 "src/preproc/eqn/eqn.cpp" + break; + + case 10: +-#line 153 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 157 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_limit_box((yyvsp[-2].b), 0, (yyvsp[0].b)); } +-#line 1533 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1548 "src/preproc/eqn/eqn.cpp" + break; + + case 11: +-#line 155 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 159 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_limit_box((yyvsp[-2].b), (yyvsp[0].b), 0); } +-#line 1539 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1554 "src/preproc/eqn/eqn.cpp" + break; + + case 12: +-#line 157 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 161 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_limit_box((yyvsp[-4].b), (yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1545 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1560 "src/preproc/eqn/eqn.cpp" + break; + + case 13: +-#line 159 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 163 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_limit_box((yyvsp[-4].b), make_limit_box((yyvsp[-2].b), (yyvsp[0].b), 0), 0); } +-#line 1551 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1566 "src/preproc/eqn/eqn.cpp" + break; + + case 14: +-#line 164 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 168 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1557 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1572 "src/preproc/eqn/eqn.cpp" + break; + + case 15: +-#line 166 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 170 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_sqrt_box((yyvsp[0].b)); } +-#line 1563 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1578 "src/preproc/eqn/eqn.cpp" + break; + + case 16: +-#line 168 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 172 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_over_box((yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1569 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1584 "src/preproc/eqn/eqn.cpp" + break; + + case 17: +-#line 170 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 174 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_small_over_box((yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1575 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1590 "src/preproc/eqn/eqn.cpp" + break; + + case 18: +-#line 175 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 179 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1581 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1596 "src/preproc/eqn/eqn.cpp" + break; + + case 19: +-#line 177 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 181 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_script_box((yyvsp[-2].b), 0, (yyvsp[0].b)); } +-#line 1587 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1602 "src/preproc/eqn/eqn.cpp" + break; + + case 20: +-#line 182 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 186 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[0].b); } +-#line 1593 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1608 "src/preproc/eqn/eqn.cpp" + break; + + case 21: +-#line 184 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 188 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_script_box((yyvsp[-2].b), (yyvsp[0].b), 0); } +-#line 1599 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1614 "src/preproc/eqn/eqn.cpp" + break; + + case 22: +-#line 186 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 190 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_script_box((yyvsp[-4].b), (yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1605 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1620 "src/preproc/eqn/eqn.cpp" + break; + + case 23: +-#line 191 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 195 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = split_text((yyvsp[0].str)); } +-#line 1611 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1626 "src/preproc/eqn/eqn.cpp" + break; + + case 24: +-#line 193 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 197 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new quoted_text_box((yyvsp[0].str)); } +-#line 1617 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1632 "src/preproc/eqn/eqn.cpp" + break; + + case 25: +-#line 195 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 199 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = split_text((yyvsp[0].str)); } +-#line 1623 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1638 "src/preproc/eqn/eqn.cpp" + break; + + case 26: +-#line 197 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 201 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new quoted_text_box((yyvsp[0].str)); } +-#line 1629 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1644 "src/preproc/eqn/eqn.cpp" + break; + + case 27: +-#line 199 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 203 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new half_space_box; } +-#line 1635 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1650 "src/preproc/eqn/eqn.cpp" + break; + + case 28: +-#line 201 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 205 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new space_box; } +-#line 1641 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1656 "src/preproc/eqn/eqn.cpp" + break; + + case 29: +-#line 203 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 207 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new tab_box; } +-#line 1647 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1662 "src/preproc/eqn/eqn.cpp" + break; + + case 30: +-#line 205 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 209 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[-1].b); } +-#line 1653 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1668 "src/preproc/eqn/eqn.cpp" + break; + + case 31: +-#line 207 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 211 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].pb)->set_alignment(CENTER_ALIGN); (yyval.b) = (yyvsp[0].pb); } +-#line 1659 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1674 "src/preproc/eqn/eqn.cpp" + break; + + case 32: +-#line 209 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 213 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].pb)->set_alignment(LEFT_ALIGN); (yyval.b) = (yyvsp[0].pb); } +-#line 1665 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1680 "src/preproc/eqn/eqn.cpp" + break; + + case 33: +-#line 211 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 215 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].pb)->set_alignment(RIGHT_ALIGN); (yyval.b) = (yyvsp[0].pb); } +-#line 1671 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1686 "src/preproc/eqn/eqn.cpp" + break; + + case 34: +-#line 213 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 217 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].pb)->set_alignment(CENTER_ALIGN); (yyval.b) = (yyvsp[0].pb); } +-#line 1677 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1692 "src/preproc/eqn/eqn.cpp" + break; + + case 35: +-#line 215 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 219 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = (yyvsp[-1].mb); } +-#line 1683 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1698 "src/preproc/eqn/eqn.cpp" + break; + + case 36: +-#line 217 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 221 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_delim_box((yyvsp[-3].str), (yyvsp[-2].b), (yyvsp[0].str)); } +-#line 1689 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1704 "src/preproc/eqn/eqn.cpp" + break; + + case 37: +-#line 219 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 223 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_delim_box((yyvsp[-1].str), (yyvsp[0].b), 0); } +-#line 1695 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1710 "src/preproc/eqn/eqn.cpp" + break; + + case 38: +-#line 221 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 225 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_overline_box((yyvsp[-1].b)); } +-#line 1701 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1716 "src/preproc/eqn/eqn.cpp" + break; + + case 39: +-#line 223 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 227 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_underline_box((yyvsp[-1].b)); } +-#line 1707 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1722 "src/preproc/eqn/eqn.cpp" + break; + + case 40: +-#line 225 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 229 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_prime_box((yyvsp[-1].b)); } +-#line 1713 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1728 "src/preproc/eqn/eqn.cpp" + break; + + case 41: +-#line 227 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 231 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_accent_box((yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1719 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1734 "src/preproc/eqn/eqn.cpp" + break; + + case 42: +-#line 229 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 233 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_uaccent_box((yyvsp[-2].b), (yyvsp[0].b)); } +-#line 1725 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1740 "src/preproc/eqn/eqn.cpp" + break; + + case 43: +-#line 231 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 235 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new font_box(strsave(get_grfont()), (yyvsp[0].b)); } +-#line 1731 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1746 "src/preproc/eqn/eqn.cpp" + break; + + case 44: +-#line 233 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 237 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new font_box(strsave(get_gbfont()), (yyvsp[0].b)); } +-#line 1737 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1752 "src/preproc/eqn/eqn.cpp" + break; + + case 45: +-#line 235 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 239 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new font_box(strsave(get_gfont()), (yyvsp[0].b)); } +-#line 1743 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1758 "src/preproc/eqn/eqn.cpp" + break; + + case 46: +-#line 237 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 241 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new fat_box((yyvsp[0].b)); } +-#line 1749 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1764 "src/preproc/eqn/eqn.cpp" + break; + + case 47: +-#line 239 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 243 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new font_box((yyvsp[-1].str), (yyvsp[0].b)); } +-#line 1755 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1770 "src/preproc/eqn/eqn.cpp" + break; + + case 48: +-#line 241 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 245 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new size_box((yyvsp[-1].str), (yyvsp[0].b)); } +-#line 1761 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1776 "src/preproc/eqn/eqn.cpp" + break; + + case 49: +-#line 243 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 247 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new hmotion_box((yyvsp[-1].n), (yyvsp[0].b)); } +-#line 1767 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1782 "src/preproc/eqn/eqn.cpp" + break; + + case 50: +-#line 245 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 249 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new hmotion_box(-(yyvsp[-1].n), (yyvsp[0].b)); } +-#line 1773 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1788 "src/preproc/eqn/eqn.cpp" + break; + + case 51: +-#line 247 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 251 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new vmotion_box((yyvsp[-1].n), (yyvsp[0].b)); } +-#line 1779 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1794 "src/preproc/eqn/eqn.cpp" + break; + + case 52: +-#line 249 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 253 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new vmotion_box(-(yyvsp[-1].n), (yyvsp[0].b)); } +-#line 1785 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1800 "src/preproc/eqn/eqn.cpp" + break; + + case 53: +-#line 251 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 255 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].b)->set_spacing_type((yyvsp[-1].str)); (yyval.b) = (yyvsp[0].b); } +-#line 1791 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1806 "src/preproc/eqn/eqn.cpp" + break; + + case 54: +-#line 253 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 257 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = new vcenter_box((yyvsp[0].b)); } +-#line 1797 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1812 "src/preproc/eqn/eqn.cpp" + break; + + case 55: +-#line 255 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 259 "src/preproc/eqn/eqn.ypp" + { (yyval.b) = make_special_box((yyvsp[-1].str), (yyvsp[0].b)); } +-#line 1803 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1818 "src/preproc/eqn/eqn.cpp" + break; + + case 56: +-#line 260 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 264 "src/preproc/eqn/eqn.ypp" + { + int n; + if (sscanf((yyvsp[0].str), "%d", &n) == 1) + (yyval.n) = n; + a_delete (yyvsp[0].str); + } +-#line 1814 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1829 "src/preproc/eqn/eqn.cpp" + break; + + case 57: +-#line 270 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 274 "src/preproc/eqn/eqn.ypp" + { (yyval.pb) = new pile_box((yyvsp[0].b)); } +-#line 1820 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1835 "src/preproc/eqn/eqn.cpp" + break; + + case 58: +-#line 272 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 276 "src/preproc/eqn/eqn.ypp" + { (yyvsp[-2].pb)->append((yyvsp[0].b)); (yyval.pb) = (yyvsp[-2].pb); } +-#line 1826 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1841 "src/preproc/eqn/eqn.cpp" + break; + + case 59: +-#line 277 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 281 "src/preproc/eqn/eqn.ypp" + { (yyval.pb) = (yyvsp[-1].pb); } +-#line 1832 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1847 "src/preproc/eqn/eqn.cpp" + break; + + case 60: +-#line 279 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 283 "src/preproc/eqn/eqn.ypp" + { (yyvsp[-1].pb)->set_space((yyvsp[-3].n)); (yyval.pb) = (yyvsp[-1].pb); } +-#line 1838 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1853 "src/preproc/eqn/eqn.cpp" + break; + + case 61: +-#line 284 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 288 "src/preproc/eqn/eqn.ypp" + { (yyval.mb) = new matrix_box((yyvsp[0].col)); } +-#line 1844 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1859 "src/preproc/eqn/eqn.cpp" + break; + + case 62: +-#line 286 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 290 "src/preproc/eqn/eqn.ypp" + { (yyvsp[-1].mb)->append((yyvsp[0].col)); (yyval.mb) = (yyvsp[-1].mb); } +-#line 1850 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1865 "src/preproc/eqn/eqn.cpp" + break; + + case 63: +-#line 291 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 295 "src/preproc/eqn/eqn.ypp" + { (yyval.col) = new column((yyvsp[0].b)); } +-#line 1856 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1871 "src/preproc/eqn/eqn.cpp" + break; + + case 64: +-#line 293 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 297 "src/preproc/eqn/eqn.ypp" + { (yyvsp[-2].col)->append((yyvsp[0].b)); (yyval.col) = (yyvsp[-2].col); } +-#line 1862 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1877 "src/preproc/eqn/eqn.cpp" + break; + + case 65: +-#line 298 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 302 "src/preproc/eqn/eqn.ypp" + { (yyval.col) = (yyvsp[-1].col); } +-#line 1868 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1883 "src/preproc/eqn/eqn.cpp" + break; + + case 66: +-#line 300 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 304 "src/preproc/eqn/eqn.ypp" + { (yyvsp[-1].col)->set_space((yyvsp[-3].n)); (yyval.col) = (yyvsp[-1].col); } +-#line 1874 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1889 "src/preproc/eqn/eqn.cpp" + break; + + case 67: +-#line 305 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 309 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].col)->set_alignment(CENTER_ALIGN); (yyval.col) = (yyvsp[0].col); } +-#line 1880 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1895 "src/preproc/eqn/eqn.cpp" + break; + + case 68: +-#line 307 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 311 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].col)->set_alignment(LEFT_ALIGN); (yyval.col) = (yyvsp[0].col); } +-#line 1886 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1901 "src/preproc/eqn/eqn.cpp" + break; + + case 69: +-#line 309 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 313 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].col)->set_alignment(RIGHT_ALIGN); (yyval.col) = (yyvsp[0].col); } +-#line 1892 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1907 "src/preproc/eqn/eqn.cpp" + break; + + case 70: +-#line 311 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 315 "src/preproc/eqn/eqn.ypp" + { (yyvsp[0].col)->set_alignment(CENTER_ALIGN); (yyval.col) = (yyvsp[0].col); } +-#line 1898 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1913 "src/preproc/eqn/eqn.cpp" + break; + + case 71: +-#line 315 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 319 "src/preproc/eqn/eqn.ypp" + { (yyval.str) = (yyvsp[0].str); } +-#line 1904 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1919 "src/preproc/eqn/eqn.cpp" + break; + + case 72: +-#line 317 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 321 "src/preproc/eqn/eqn.ypp" + { (yyval.str) = (yyvsp[0].str); } +-#line 1910 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1925 "src/preproc/eqn/eqn.cpp" + break; + + case 73: +-#line 322 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 326 "src/preproc/eqn/eqn.ypp" + { (yyval.str) = (yyvsp[0].str); } +-#line 1916 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1931 "src/preproc/eqn/eqn.cpp" + break; + + case 74: +-#line 324 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 328 "src/preproc/eqn/eqn.ypp" + { (yyval.str) = strsave("{"); } +-#line 1922 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1937 "src/preproc/eqn/eqn.cpp" + break; + + case 75: +-#line 326 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1645 */ ++#line 330 "src/preproc/eqn/eqn.ypp" + { (yyval.str) = strsave("}"); } +-#line 1928 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1943 "src/preproc/eqn/eqn.cpp" + break; + + +-#line 1932 "src/preproc/eqn/eqn.cpp" /* yacc.c:1645 */ ++#line 1947 "src/preproc/eqn/eqn.cpp" ++ + default: break; + } + /* User semantic actions sometimes alter yychar, and that requires +@@ -2042,12 +2058,10 @@ yyerrlab: + | yyerrorlab -- error raised explicitly by YYERROR. | + `---------------------------------------------------*/ + yyerrorlab: +- +- /* Pacify compilers like GCC when the user code never invokes +- YYERROR and the label yyerrorlab therefore never appears in user +- code. */ +- if (/*CONSTCOND*/ 0) +- goto yyerrorlab; ++ /* Pacify compilers when the user code never invokes YYERROR and the ++ label yyerrorlab therefore never appears in user code. */ ++ if (0) ++ YYERROR; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ +@@ -2109,6 +2123,7 @@ yyacceptlab: + yyresult = 0; + goto yyreturn; + ++ + /*-----------------------------------. + | yyabortlab -- YYABORT comes here. | + `-----------------------------------*/ +@@ -2116,6 +2131,7 @@ yyabortlab: + yyresult = 1; + goto yyreturn; + ++ + #if !defined yyoverflow || YYERROR_VERBOSE + /*-------------------------------------------------. + | yyexhaustedlab -- memory exhaustion comes here. | +@@ -2126,6 +2142,10 @@ yyexhaustedlab: + /* Fall through. */ + #endif + ++ ++/*-----------------------------------------------------. ++| yyreturn -- parsing is finished, return the result. | ++`-----------------------------------------------------*/ + yyreturn: + if (yychar != YYEMPTY) + { +@@ -2155,5 +2175,5 @@ yyreturn: + #endif + return yyresult; + } +-#line 329 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1903 */ ++#line 333 "src/preproc/eqn/eqn.ypp" + +diff --git a/src/preproc/eqn/eqn.hpp b/src/preproc/eqn/eqn.hpp +index 32a32a5..9a092c1 100644 +--- a/src/preproc/eqn/eqn.hpp ++++ b/src/preproc/eqn/eqn.hpp +@@ -1,8 +1,9 @@ +-/* A Bison parser, made by GNU Bison 3.2. */ ++/* A Bison parser, made by GNU Bison 3.4.1. */ + + /* Bison interface for Yacc-like parsers in C + +- Copyright (C) 1984, 1989-1990, 2000-2015, 2018 Free Software Foundation, Inc. ++ Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, ++ Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -170,10 +171,9 @@ extern int yydebug; + + /* Value type. */ + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +- + union YYSTYPE + { +-#line 30 "../src/preproc/eqn/eqn.ypp" /* yacc.c:1906 */ ++#line 34 "src/preproc/eqn/eqn.ypp" + + char *str; + box *b; +@@ -182,9 +182,9 @@ union YYSTYPE + int n; + column *col; + +-#line 186 "src/preproc/eqn/eqn.hpp" /* yacc.c:1906 */ +-}; ++#line 186 "src/preproc/eqn/eqn.hpp" + ++}; + typedef union YYSTYPE YYSTYPE; + # define YYSTYPE_IS_TRIVIAL 1 + # define YYSTYPE_IS_DECLARED 1 +diff --git a/src/preproc/eqn/eqn.ypp b/src/preproc/eqn/eqn.ypp +index fb318c3..b7b647e 100644 +--- a/src/preproc/eqn/eqn.ypp ++++ b/src/preproc/eqn/eqn.ypp +@@ -16,6 +16,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + %{ ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + #include +diff --git a/src/preproc/eqn/other.cpp b/src/preproc/eqn/other.cpp +index 8db993f..38db396 100644 +--- a/src/preproc/eqn/other.cpp ++++ b/src/preproc/eqn/other.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + + #include "eqn.h" +diff --git a/src/preproc/eqn/text.cpp b/src/preproc/eqn/text.cpp +index f3d06f9..3b244d5 100644 +--- a/src/preproc/eqn/text.cpp ++++ b/src/preproc/eqn/text.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + #include + #include "eqn.h" +diff --git a/src/preproc/pic/object.cpp b/src/preproc/pic/object.cpp +index d8ba610..f26a831 100644 +--- a/src/preproc/pic/object.cpp ++++ b/src/preproc/pic/object.cpp +@@ -17,6 +17,10 @@ for more details. + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#if HAVE_CONFIG_H ++# include ++#endif ++ + #include + + #include "pic.h" +-- +2.22.0 + diff --git a/meta/recipes-extended/groff/groff_1.22.4.bb b/meta/recipes-extended/groff/groff_1.22.4.bb index a190230b31..082597f693 100644 --- a/meta/recipes-extended/groff/groff_1.22.4.bb +++ b/meta/recipes-extended/groff/groff_1.22.4.bb @@ -11,6 +11,7 @@ SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ file://0001-replace-perl-w-with-use-warnings.patch \ file://groff-not-search-fonts-on-build-host.patch \ file://0001-support-musl.patch \ + file://0001-Include-config.h.patch \ " SRC_URI[md5sum] = "08fb04335e2f5e73f23ea4c3adbf0c5f" From patchwork Mon Aug 5 19:34:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 170614 Delivered-To: patch@linaro.org Received: by 2002:a92:512:0:0:0:0:0 with SMTP id q18csp4687827ile; Mon, 5 Aug 2019 12:35:19 -0700 (PDT) X-Google-Smtp-Source: APXvYqytyAJIPv++8H/y/cpiDOoa5qlttch0Yhju9jVVs2LJqUGhtn9wmqG0YOKSgiDO4BzfdlND X-Received: by 2002:a17:902:7288:: with SMTP id d8mr62221304pll.133.1565033719726; Mon, 05 Aug 2019 12:35:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565033719; cv=none; d=google.com; s=arc-20160816; b=NoNuSUEtBjixnj+Sb8hkYMt5RrVW+DkzezKcS8OJIueL/zVMrPYMcprc5R0MdzKUCv A69rHG1RYuxZQEJ+pbDzgnJAA1vIT2PMO1diDuqc7cd90/m8WSdf37eAWt6hJUoYMPrf WJ6C8xarQtwRTDS6j46kwP/C5ggH5nrD7qCLG7/oeMlarZLlcEfbbM0uxtsud0p+uum4 PoU0QIkbjb9D9rXS7iazURjzYM0PnQ8R7OwaN85BliY0dsEs6KLNwk0XFzFNZ4ZJcRL+ x+6BP7aRRixuMiXDIaCPup7D+njRRAx8F9783RTSUHSwH9IDKCnblPyuwSzjkO9QruCG f18w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:references:in-reply-to:message-id:date:to:from :dkim-signature:delivered-to; bh=CLbXPffhWmZ6I1jaiV/mtgDOnviKN287XdF3taQEgZQ=; b=Wdy8cgVGZMTstQkhiiQeQBjpKO3zqU9woyyLUTuVkQ91VIa5mXhw5pe/H0j7r3aGYA P24zPtEEkgazlsWAwOyNo3LWFo/uHRmy3mrpZsVIgTq+5F8BE4V9tldRknPtwxcTmuN4 gv1SPXubBVIWmFYz1n65/diZ9QmEHsjW9FzZNgGua9VtczaQKGwzeK0TieHKsugkJIHY XagJjWWZ5HrWZjWqxRzO7JH9DI+YLvbMV52MtIGGSBcA6GAUY887KLv23orAXeCBFO/9 nNy4Vvuo4Z/nU0FT6ho2YUUb1dPTFv3lsCB0KPzQqJt/URmcmc6UGGJlSLzVtBp5jhiJ YPEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b="W/OxY661"; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id f91si41909947plf.300.2019.08.05.12.35.19; Mon, 05 Aug 2019 12:35:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b="W/OxY661"; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from ec2-34-214-78-129.us-west-2.compute.amazonaws.com (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id A3C067F300; Mon, 5 Aug 2019 19:35:16 +0000 (UTC) X-Original-To: openembedded-core@lists.openembedded.org Delivered-To: openembedded-core@lists.openembedded.org Received: from mail-pf1-f175.google.com (mail-pf1-f175.google.com [209.85.210.175]) by mail.openembedded.org (Postfix) with ESMTP id 804867F2ED for ; Mon, 5 Aug 2019 19:34:46 +0000 (UTC) Received: by mail-pf1-f175.google.com with SMTP id q10so40128448pff.9 for ; Mon, 05 Aug 2019 12:34:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/y8Rw5BjL4SSnJIvDgTYY62MZo/gEoqNXiA3nNaGgj8=; b=W/OxY661AdbZJODQn7DqXCfjGsPKJ94VCj6JiFl4uy3cTiIW4TjvQxsKY6zdQtVb7L ml5eDYsYrJQPIzXlc87CPes7pWQ6HM4LF8Oa3Pee+n0rQlX1WIAXep0AKlr4fA9iX0B6 gkqYpZslKad0nR1XmrFhPuNyLah0pxmRuv9/O1n/WeMs8QnZC48JIJt1YtvuMqSxW8hN 4/ZbmXJaIne7v6bYHuz5GCza1UYUJBxoeIuyG/r4ASSpydya4MEfSLVj0jrVVa1B3ZRw AXCQcgTOMM0R6AIMKRIqiQoBcTmwCu9AYA7jHPd+7Y/OvXurQXEy6fQYaWDYRFhwkrW5 +/9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/y8Rw5BjL4SSnJIvDgTYY62MZo/gEoqNXiA3nNaGgj8=; b=umv8FWHi85x2k2gzJvu2HuEV9gPSzjYdntt6qNbFCj26uhFCPPUqrqEVeFJeoi0tMY lr+v/WSwlmtfUI38+s5HokMqR+RyJnq6RCKZYSslddffmKdm78llqkN7QXyalzch6xZZ XuH0koNiUs01+iBY7o3t8V3ybX4xQeFAC8fPSloKGTeIAiabK1yEFD+KB0l3UN+2Edf3 L2tFig50Ab9UNbCOWlY5z8/64a7giPYyLs+H0c8IdLrB9jl+JsAYaEvjueq1fgMiUBL0 6RqPLxFvHExvav2jpna+kXiGjcpOCGVDK1bfvQpdxBw2w1rM7pWFg3DOTygSVCQcqhRp zZ1A== X-Gm-Message-State: APjAAAWUEnCBgH3RrEdVM7RLGbRG2oGozTzZMdttNDmk/cL8Uz8JzTGX Zi6Vwyh4ts1j2a5MSgU77WvmlX5oXoc= X-Received: by 2002:a63:e807:: with SMTP id s7mr133600638pgh.194.1565033687016; Mon, 05 Aug 2019 12:34:47 -0700 (PDT) Received: from apollo.hsd1.ca.comcast.net (c-73-71-176-3.hsd1.ca.comcast.net. [73.71.176.3]) by smtp.gmail.com with ESMTPSA id j10sm51904961pfn.188.2019.08.05.12.34.46 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 05 Aug 2019 12:34:46 -0700 (PDT) From: Khem Raj To: openembedded-core@lists.openembedded.org Date: Mon, 5 Aug 2019 12:34:30 -0700 Message-Id: <20190805193431.32053-2-raj.khem@gmail.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190805193431.32053-1-raj.khem@gmail.com> References: <20190805193431.32053-1-raj.khem@gmail.com> MIME-Version: 1.0 Subject: [OE-core] [PATCH 2/3] musl: Fix clock_gettime on 32-bit archs without vdso X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: openembedded-core-bounces@lists.openembedded.org Errors-To: openembedded-core-bounces@lists.openembedded.org This was seen in x86 code being run via qemu-user ending in (process:883): GLib-ERROR **: 22:28:34.117: GLib requires working CLOCK_MONOTONIC qemu: uncaught target signal 5 (Trace/breakpoint trap) - core dumped Signed-off-by: Khem Raj --- ...n-clock_gettime-on-32-bit-archs-with.patch | 30 +++++++++++++++++++ meta/recipes-core/musl/musl_git.bb | 1 + 2 files changed, 31 insertions(+) create mode 100644 meta/recipes-core/musl/musl/0001-fix-regression-in-clock_gettime-on-32-bit-archs-with.patch -- 2.22.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core diff --git a/meta/recipes-core/musl/musl/0001-fix-regression-in-clock_gettime-on-32-bit-archs-with.patch b/meta/recipes-core/musl/musl/0001-fix-regression-in-clock_gettime-on-32-bit-archs-with.patch new file mode 100644 index 0000000000..d89fcee4f3 --- /dev/null +++ b/meta/recipes-core/musl/musl/0001-fix-regression-in-clock_gettime-on-32-bit-archs-with.patch @@ -0,0 +1,30 @@ +From 192c8e18c0f502fe8269b075c21e58290f875182 Mon Sep 17 00:00:00 2001 +From: Rich Felker +Date: Mon, 5 Aug 2019 12:01:13 -0400 +Subject: [PATCH] fix regression in clock_gettime on 32-bit archs without vdso + +commit 72f50245d018af0c31b38dec83c557a4e5dd1ea8 broke this by creating +a code path where r is uninitialized. + +Upstream-Status: Submitted +Signed-off-by: Khem Raj + +--- + src/time/clock_gettime.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/time/clock_gettime.c b/src/time/clock_gettime.c +index 63e9f9c8..3e1d0975 100644 +--- a/src/time/clock_gettime.c ++++ b/src/time/clock_gettime.c +@@ -73,6 +73,7 @@ int __clock_gettime(clockid_t clk, struct timespec *ts) + #endif + + #ifdef SYS_clock_gettime64 ++ r = -ENOSYS; + if (sizeof(time_t) > 4) + r = __syscall(SYS_clock_gettime64, clk, ts); + if (SYS_clock_gettime == SYS_clock_gettime64 || r!=-ENOSYS) +-- +2.22.0 + diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb index bf6f983dc0..87eec31a0f 100644 --- a/meta/recipes-core/musl/musl_git.bb +++ b/meta/recipes-core/musl/musl_git.bb @@ -15,6 +15,7 @@ PV = "${BASEVER}+git${SRCPV}" SRC_URI = "git://git.musl-libc.org/musl \ file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ + file://0001-fix-regression-in-clock_gettime-on-32-bit-archs-with.patch \ " S = "${WORKDIR}/git" From patchwork Mon Aug 5 19:34:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 170615 Delivered-To: patch@linaro.org Received: by 2002:a92:512:0:0:0:0:0 with SMTP id q18csp4687939ile; Mon, 5 Aug 2019 12:35:26 -0700 (PDT) X-Google-Smtp-Source: APXvYqxa75b5iCyxhvkK9ej9AdDzatwMRMlRkcxswXnaRPfWgjgJ1pvIEB3zu8tu2Fum/877Bzen X-Received: by 2002:a17:902:f81:: with SMTP id 1mr50660104plz.191.1565033726657; Mon, 05 Aug 2019 12:35:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565033726; cv=none; d=google.com; s=arc-20160816; b=Gf6CUz6Lx2bIf+Qrc058xUzA0F2OOh10weH8X7ywiUDpzdADfCE6SMoBKZTXFEhYab 9Req57/rjJdUV0ESEvFP9uS5LFXKs1iRXeaHir0NdwJwF0vamHjkchdOa2q9Q/mUFpjR dr6BZoCVnBSKKE70fiyYJYkuU5ySzjJwRiFyrF3dtcAg0QjeBclf20Sy/Hv+WNcdeXwJ 9VkJAWe7yO8qx8oz74aq6OekICl0IYNcfYNNUQ/GbVevXD4jFSn6fLLZG5b80sagHhY3 1RwVsN4z1JDD+NXBPrnPzS163+sfTPxa3GNYij9EkimldW50aW1/+Lk2RQrMPHN18x13 6glw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:references:in-reply-to:message-id:date:to:from :dkim-signature:delivered-to; bh=QgXWeOyVD9lZNoeBOlh9uSrcYECPrKCjbOLZfe2k1W8=; b=srMXtfbDQa+JEqO1WZ1qSvEckQsR1RIpw6Cx2o0R4UDa+0qlgeqp1v4EiJaX/lCpD/ eH/xZsc59V5I38Z/V6vAXjhtyxtIL3pESFOm5tf3pUBOfTHkK0GHC47M9ka9wuVxKHh5 JKE9fE70TKaTP7KrQpgDIDAoHdj/0z3SYs8Mn6VTn3+MYbfWxFakppwxzwYQY4XkCsO0 2wVLqS+e6REOba7JMa4qiVf4Ywj/n69DaKPbd84mbXK2OgAWjos7DxV06Di2MMBXZReg RIgXGmcqXNqAXEuaEPrxWk+oIGzC/yE10tEja7UX6jj/BFsrpqS5wBJNiOZ0JxIGtbsm nglg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=YuYVl3sd; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id l64si13167685pjb.93.2019.08.05.12.35.26; Mon, 05 Aug 2019 12:35:26 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=YuYVl3sd; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from ec2-34-214-78-129.us-west-2.compute.amazonaws.com (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id B8C077F30E; Mon, 5 Aug 2019 19:35:20 +0000 (UTC) X-Original-To: openembedded-core@lists.openembedded.org Delivered-To: openembedded-core@lists.openembedded.org Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) by mail.openembedded.org (Postfix) with ESMTP id CB4397F2FB for ; Mon, 5 Aug 2019 19:34:47 +0000 (UTC) Received: by mail-pg1-f177.google.com with SMTP id u17so40244606pgi.6 for ; Mon, 05 Aug 2019 12:34:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=S6c1d6DWn46FmbkAxlZ+lRCEwOHO1LtFJ6r3Suve7TI=; b=YuYVl3sdJuHow9IbOUo9gD/hORp0vdsLjI/8zmQNES25nGWWuk0xhnNsxJH/kPk2cQ /nFSJo6PzwVyhMfQiKCkWm+cY1o8Y9bxhIakcKpXBDtfYWZ4I31lqffVx92V6DOlNqjD BKsQIGlXj/+C1lxRSNJA3xlTb4I9SORZ02Q+dADIQcarkA0stdWsAuF8dr8BtqnEY0f6 qfttkNEsOS38EJ1Jkj6UwefKDDpqrJXQvseMtnVsStbVUasR6zKZFYqunY20wDjyxLLE lSluUkV15mVLsd0gUhIwb1Tqy/8DIy8VSHqidh17nSsSMWzmMa4GMWEJke1f8yCd/kCh 1V9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=S6c1d6DWn46FmbkAxlZ+lRCEwOHO1LtFJ6r3Suve7TI=; b=uehFq0yE5qo8W2wE4vZ2+zBuMJY1IsTTDkD4+6mo6BhZCV6Bpatl6xN7lRaQi7yirS bOFox29P2rhCInEa6yJvNuAcUJYs29QCPVcKHY7pUmHJ9k9v8GBNMfJVfNHcrqIaoo+1 npVkA0KA/RcbgOF8yK2sZNu7o++6/Od2n1uml5nydWdYlzBee85SHmUckFBFdGuJomwg xgPWxGSK7paJOb5tIzqylA6ZQbfHUXUtQ3d0ih0MS7sBKSi7AvyB1L9TitLhP9KSR33z uYmGFOafpQ0y3seC15yp57JACoStyn4SrUv4Tdqpr1mUtJZ3BZGW9K/hxc/Foi0rFe52 8m9Q== X-Gm-Message-State: APjAAAUsOXExoqQgI3bRkpevuv8VpCgpwg8f7OlAaOKDCNNIjd1Iv358 S/tTbC5CR1Kmrj+yA9IJYEmuq6Jszmw= X-Received: by 2002:a62:78c2:: with SMTP id t185mr76433684pfc.142.1565033688463; Mon, 05 Aug 2019 12:34:48 -0700 (PDT) Received: from apollo.hsd1.ca.comcast.net (c-73-71-176-3.hsd1.ca.comcast.net. [73.71.176.3]) by smtp.gmail.com with ESMTPSA id j10sm51904961pfn.188.2019.08.05.12.34.47 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 05 Aug 2019 12:34:47 -0700 (PDT) From: Khem Raj To: openembedded-core@lists.openembedded.org Date: Mon, 5 Aug 2019 12:34:31 -0700 Message-Id: <20190805193431.32053-3-raj.khem@gmail.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190805193431.32053-1-raj.khem@gmail.com> References: <20190805193431.32053-1-raj.khem@gmail.com> MIME-Version: 1.0 Subject: [OE-core] [PATCH 3/3] webkitgtk: Fix compile failures with clang X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: openembedded-core-bounces@lists.openembedded.org Errors-To: openembedded-core-bounces@lists.openembedded.org Backport upstream patch to address build regression with clang Fixes webkitgtk-2.24.3/Source/bmalloc/bmalloc/AvailableMemory.cpp:120:31: error: implicit instantiation of undefined template 'std::__1::array' std::array statmBuffer; ^ Signed-off-by: Khem Raj --- ...uild-failure-https-bugs.webkit.org-s.patch | 33 +++++++++++++++++++ meta/recipes-sato/webkit/webkitgtk_2.24.3.bb | 1 + 2 files changed, 34 insertions(+) create mode 100644 meta/recipes-sato/webkit/webkitgtk/0001-Unreviewed-fix-build-failure-https-bugs.webkit.org-s.patch -- 2.22.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-Unreviewed-fix-build-failure-https-bugs.webkit.org-s.patch b/meta/recipes-sato/webkit/webkitgtk/0001-Unreviewed-fix-build-failure-https-bugs.webkit.org-s.patch new file mode 100644 index 0000000000..e550a0d457 --- /dev/null +++ b/meta/recipes-sato/webkit/webkitgtk/0001-Unreviewed-fix-build-failure-https-bugs.webkit.org-s.patch @@ -0,0 +1,33 @@ +From 4bc241539246f7a17d07357257ab47cb96bc4b69 Mon Sep 17 00:00:00 2001 +From: "ysuzuki@apple.com" +Date: Thu, 18 Apr 2019 07:30:18 +0000 +Subject: [PATCH] Unreviewed, fix build failure + https://bugs.webkit.org/show_bug.cgi?id=195938 + +Including . + +* bmalloc/AvailableMemory.cpp: + +git-svn-id: http://svn.webkit.org/repository/webkit/trunk@244422 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +Upstream-Status: Backport [https://github.com/WebKit/webkit/commit/84c111dc0d83b5acf60706ef49bc2f5e91112471] +Signed-off-by: Khem Raj +--- + Source/bmalloc/bmalloc/AvailableMemory.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Source/bmalloc/bmalloc/AvailableMemory.cpp b/Source/bmalloc/bmalloc/AvailableMemory.cpp +index 595889fe..b72000d5 100644 +--- a/Source/bmalloc/bmalloc/AvailableMemory.cpp ++++ b/Source/bmalloc/bmalloc/AvailableMemory.cpp +@@ -32,6 +32,7 @@ + #include "PerProcess.h" + #include "Scavenger.h" + #include "Sizes.h" ++#include + #include + #if BOS(DARWIN) + #if BPLATFORM(IOS_FAMILY) +-- +2.22.0 + diff --git a/meta/recipes-sato/webkit/webkitgtk_2.24.3.bb b/meta/recipes-sato/webkit/webkitgtk_2.24.3.bb index 81cbf34198..c42c3de69f 100644 --- a/meta/recipes-sato/webkit/webkitgtk_2.24.3.bb +++ b/meta/recipes-sato/webkit/webkitgtk_2.24.3.bb @@ -23,6 +23,7 @@ SRC_URI = "http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ file://include_array.patch \ file://narrowing.patch \ file://0001-gstreamer-add-a-missing-format-string.patch \ + file://0001-Unreviewed-fix-build-failure-https-bugs.webkit.org-s.patch \ " SRC_URI[md5sum] = "e2a5bbd09a217eba096a2d1562143e35"