From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 63025 invoked by alias); 4 May 2017 08:31:29 -0000 Mailing-List: contact elfutils-devel-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Post: List-Help: List-Subscribe: Sender: elfutils-devel-owner@sourceware.org Received: (qmail 63006 invoked by uid 89); 4 May 2017 08:31:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.2 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.6 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=Member X-Spam-Status: No, score=-25.6 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: EUR01-HE1-obe.outbound.protection.outlook.com Received: from mail-he1eur01on0135.outbound.protection.outlook.com (HELO EUR01-HE1-obe.outbound.protection.outlook.com) (104.47.0.135) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 04 May 2017 08:31:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qtcompany.onmicrosoft.com; s=selector1-qt-io; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=aesfivUCdVave6XjLDHxp1XDtJVqzo+aYsvEF5Bc4j4=; b=BLpOIr4kYsHlrUi2OO5Har7/2WE5383xlTicgoo3O/sHMX0N/KYIXfuBNtEfZ981nZElvf2abEsMGTNKFEmgRayPfyamFiWmmZ/fz3nvH/A+MWTTRcDl2DpIWJxbUJcuKMDWpYwciZKgdfTlPnTaWdHNhyUgnJzTdgpsx7IAz1E= Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=qt.io; Received: from [10.9.78.56] (62.220.2.194) by AMSPR02MB230.eurprd02.prod.outlook.com (2a01:111:e400:8022::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Thu, 4 May 2017 08:31:24 +0000 From: Ulf Hermann Subject: [PATCH] Add ar.h for systems where it doesn't exist To: Message-ID: <77c5e212-8b7d-30fc-3a90-45483eecf22e@qt.io> Date: Thu, 04 May 2017 08:59:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [62.220.2.194] X-ClientProxiedBy: VI1PR09CA0049.eurprd09.prod.outlook.com (2603:10a6:802:28::17) To AMSPR02MB230.eurprd02.prod.outlook.com (2a01:111:e400:8022::17) X-MS-Office365-Filtering-Correlation-Id: d227d63e-94e4-4484-051d-08d492c7f36f X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131423075)(201703031133081);SRVR:AMSPR02MB230; X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;3:aPqFbe4no7sll6w7iuNLIJvDxdPlV8MVOt6BQkMc45FkTo0kSs+oYQbn+W6MyqWKDWlVZxavpi9bOSJ+KxVP3Ybrfxm++YFmEeUsBDRWMPCwS4Kxej1PZPIZEuIX+ttLnreIRTcOWYBtRFtul2MN/3SnAvX0WB4sxlxTURpIfmDkkXsXFfhKx3ibj4wUF5jOKsHJPGucOds28zSkTaVPRNxb5nMOD9fAYeGOCN+WPs+c6CYNR8eknL/51o7Phc1wAb4M1qPa6UzgAzEPW8/FdoKio9HjgP838QD7FO+pGFklea1651foOhbInO/JMjp7A+7X9fsF2Ega5YWVlFAbNA==;25:Xi4sjFJ/2c49M++p9UCe4bwfaWDQzKrLo31PgHA3loywWAgQi0neuWRm2krC7hudnIP3PfQU+GqXvcoT/sjW8t5y/13bCt85VHDTXXDRYeplUb2082PBhwZCHg5A7mIFH5pYCzb1yITFzAH7BjHs55NfKWNIZ0vgpAZsuqCDIGGITfMavrS/QrRColLeilXsS7GbxrB2pLdrSD/UBOABz7QPDoCmDe2ibc7sCZPwUd4hqLmGwFC+hYa6/UIWMFUBT+dyqYH0qaSpy4qgczyh5A234HvL1mWG+vU1biiXH780+j5dbBc4g5ILf/v3iqPmBSKlA8C0gUEMlNubuO/nPC3lfxcaxgt8oEv6LzirE3ziWlwSquwpDwyTGFlCLcyvTDB0LN+nyBLczQ8LLJ4mTpNHgfVHzM38MNgi+QZTxWbM6PIuVSAUdAfmNg0D0H3/kxVc9El57gNzPHVttcUD2w== X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;31:SnBPh1RWtwHTgjvIreA3007xgIQv2eIBcNo8jAgniQo7sazf9DnkY0i3A+7ePzD7ClBTh/MTJDn8QhF5f8dbLNlJSNHJMYPkNWivzNivWkcw2kJxnyDfRDQOnJQeunt442HFWITtY92FKCNFkjDFnKet7B+VRTiJ0R+7DcPYvoZsfYZpCoYeIwoemEOxc+9L4zhcpXDF2slBicEMqzhXFOEppclrHbl0OQ7Pq+9yUNtxDnghAOUUKX/y0xv+/Y0Pf2plG48gvguDXQwG8V230b/La5ATDs/HN2lGEoj8qgU=;20:d+9oVmp06fyuZG1h0e/VFNEgIrgwfWmyMtz4lGBuhwdn1D71nGehXAJRWQWeJ96YCoMMglkiaIDzfXEos6vXB3NXUk5OE6TP2nvGDbNhcqH+nJHrqoL8ezgaeWw0mq8TSZFT7AcbLe5ooMW6Y/13Dg0eh7rlKPwpkqripD6hXn4NAcuIrD6EUhyKAix2K3vXqE0fvqS8yiaKl45W4QqnpKar6TSEV7PTnMFbPKxJN4TLDFqirtxiQ0UuYHmD62My X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(250305191791016)(22074186197030); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(93006095)(93001095)(6041248)(20161123558100)(20161123555025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(6072148);SRVR:AMSPR02MB230;BCL:0;PCL:0;RULEID:;SRVR:AMSPR02MB230; X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;4:anceDLhzieM7GtlHX9Kq1nP8AH6OM1a3rI+sxOjbES9Q4tc+faChx5DUZKMLNOaP1Htlfb47rKaiDLKnMCLGFoTafbqdtTs3GLSR0Ck415w9SuZXZIWiYSbinj2PY+ApQzqwWvgq8tl8lNEULl0mIKkgTHfb0YV01fQ8gXmhNnqiuOlxZ9XsL4CccGQ3CJk2xK9Xll3JQIIZ7gQ1PklYp4rdoakqh7zg+stDQBd2wt5bSJKKvEHzw3YEMUrtOe+C9STwEZGPI2cTGcD+pr4h2JwOlYcy36+k9lMiVZKnCp+UpV0FGVMa3dYXcM+ENU6l5KDmC6T3vQk8vG3i6A/Twk39DPl+XoDl4HMnt8w/JYw9Coll8hlzcCabkxG58nED1rujIkS604vOQ4ais1NUFSO7cKpCPwKLMLMnBJStuj00NdsRtjWON1TFhTav1iL7LRJyv1rnv708JiSLR4tDnQkrAwo0CeoRGqHbLALSNxqpjQNXpREiicbYc7A4Vin5vK/XVbSVwNP/6zwlbpqJRXtv/8ATEXrS2I3ZnZure7v0v4vhot6ZVKnuExUrJJHJN1tVvSFkgfgnDhie4RoRQzax03DmStfB6ZqiWXbsUEyQEMKJVvUqoLcGaFODkFpIZ6xnT16a64sW6UZgJNzdcIMVcZFzg7ki5aSS9sGykyN5exHLRpOGiNSO6Y11Kfmw0TUBMfXm9tybVZvXsqc14TfuNUkoPCFg0czlS0QafL5NEpgHMkkseDQfWhVWX7dNjStdFTlnbvKbdNlTczi/a2fSn7mUEEjeq688GaNbUZ/6g3+0biHClFldtxzIBmHgF5ysvk0syCmFGFN9r6gyi2xOwhfUkm8RG6aqQ8eMcsA= X-Forefront-PRVS: 02973C87BC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(39450400003)(39840400002)(39400400002)(39410400002)(377424004)(53936002)(23676002)(5660300001)(65826007)(50466002)(33646002)(74482002)(6306002)(7736002)(6666003)(6916009)(305945005)(36756003)(31696002)(86362001)(575784001)(83506001)(64126003)(110136004)(3846002)(25786009)(54356999)(81166006)(50986999)(230700001)(47776003)(478600001)(2906002)(77096006)(6486002)(8676002)(6116002)(66066001)(38730400002)(4001350100001)(189998001)(31686004)(42186005)(2351001);DIR:OUT;SFP:1102;SCL:1;SRVR:AMSPR02MB230;H:[10.9.78.56];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTVNQUjAyTUIyMzA7MjM6Y3p4Z3RwQmhBN0N1ei9BT2VOZVk1NHV4dnJ5?= =?utf-8?B?aTRSWkREYlphR1FScWErSDFQUHZFU2lSRWdieC9FR1dTTzlmdlU3VkwxN0tl?= =?utf-8?B?R294cnRNZlhIRndwMTg5MzFsVmxnYWcwbDh1cHhTYUI3WEdIRitBMkRVZ3NL?= =?utf-8?B?UjYzaG45TE9KTTNaZHc3Qk1WRm5ySGhGdDMvVW5XclVTQUwrNmRPT2lDaUF4?= =?utf-8?B?WGliWFdVSy9kQy9ua3dWUkR5VmJiZEx1N2tyUnJ5Y3dRZVI2RTRsenlFWmh5?= =?utf-8?B?WWZlL3ZVZGhOYlpyUlVGalJzN2pvdDVSdlpKcmk4aVdBaDhNekJzK2NNR0lk?= =?utf-8?B?YU14T0M2aEh3Z1ppVVd1WGs1K1lmaDNLQ3dqNUVDZXRCMVdSdE5xNWkwS0p6?= =?utf-8?B?ejMvYzVsT3doZ1VZM3l5Y2x2K1RWcjNsUVVaQ2dIcDUvRlNJOFFKcWpwS0pt?= =?utf-8?B?OEEwWlpmalRINEpVbmpoRHJMc0kyVUFqemVXTE1Sb0JRNEZLZENYOXNKdkVW?= =?utf-8?B?dHdwNERUTlZQaXRTcWkzT0lESXJWZHlacE9aUTFmc2tKd082WGpIQ2ZRd08r?= =?utf-8?B?alNRT2lTdXgvRi9IWDI3cjA0MlVjSVdDeFNROXcweDBQUXh4T0ZudkdDT3A2?= =?utf-8?B?RlY2ajcvZk5DZ2puNzFTLzMzVWt3eE9kNDY2SmpZRGZLWGQ0bFBPWndUcE1O?= =?utf-8?B?c1ordTJjdGhTRkxPMEZuUFc4YVBLVUhGQXZ4UlZIdDF3MmY1UzB3a3gxV3hW?= =?utf-8?B?MUVXNDFGOGtseHBzVTBWYnBWYm94TTBVMkhvMjdKOFcxQWk0SlNtRjNES0R2?= =?utf-8?B?aFFPZXRxWlN5cy9MVFkzb2hJUWw1WnF4enZmb1JBLzdiak95emxZQmZwRi9n?= =?utf-8?B?MjNQU2hDaWhYSEQ5SFRJL3FIYktjYkhNU0RXODRMc2FpV3hYaGlkbjMyTjdQ?= =?utf-8?B?ZGR0czlsZXE2VS94QU1aVmplNTdlbmp1Z2tSMEs2VU9FaThhbHlTZkVVUDlw?= =?utf-8?B?VkdrbTk2WkRJWE9sQjdEd2xFTDNYTHdxT3V6Uy9PaG1ZZjU4ai9IUGU0cWxK?= =?utf-8?B?bVZTTENVaDhxY0dtNlFUanpOSW9URndxZkNOUm1KUmN4eHcrMmtRZzkwUVZM?= =?utf-8?B?QXFpcng3M3VMVHVaUjNXQ1ludlhXaWN0SzQ1OHdqQml3RkI3L3MrMWtLZThx?= =?utf-8?B?dzRtMFFwVDlJa1pLa3dwRUphL1hoVWNiaE9hd3VJaGU5RW12cFIrVWRFaSs3?= =?utf-8?B?NnE1cnRrdjVSbjVkeExVR0wyM0FXOHpSUEFGM29Nam1XaisxY0hnbmk2YWc5?= =?utf-8?B?eTRobzRxQ3RnUGtHSFNyM2wyZHkvaHdjaDBpM1JYNDFFY0lubDhXN20wb0xr?= =?utf-8?B?MzU5QUgzWllSRkg3dzFMTkxpcnRmalFWaGRibGJHQ2d6dUZnWVRXeFU2UU1v?= =?utf-8?B?YXZDQUhhc1BBTTVrWFFXMWI2YUtmbi9BOFdnMDRTWFI3c3dSR1phdTdxN0Ri?= =?utf-8?B?NXI1dUJ3dXlISGx1dTB0YlppQnNZZTNIZkRvSmJ4aVcyT0EvS3gxbWFLSkNJ?= =?utf-8?Q?hB47bIFgdALenyqkLircfGoatI1WvjNQoTnbmnEibQE=3D?= X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;6:gtRBH38CyxCnBifWuxF0Kr+/Jt+fv78xp/AdQIercdNGkVlZRq7ajU2KuiqotkI9CSInqbmU0OC2NKY/BoOaJcGlaLz8nvhOoISziDb2r6KwpyMBM4R+3RFZQvcpSad34ecqPasHUyIB1+DecQcXc1q5eQM23uJjfRF7F4XiwTvNa8Fmc46ng2Dvtq7ifSyXcV3qMhKsGEFW5It7m3i0EiGKTFGXsD8SKcw2UGq4Gbe9ge2JxXH7NXJGGC0Wagkk6jl4kOzDl2R8OaKryoagszCJOUlBwBMsUk8YCoHLlZVZX5pcAvYZ6I7MpsHWXcz4UkCTOWnYqpE9pnermrJJqdtIjpYbXSGfO3CFthwPCpoixjE7uyGsEIJPF/SQ8VdQp7ICo6N1JInlI/rh1kdRaqlgXDwuSBxZXIUgqngkpQCUWI64qhCUIv/NuNAb3aOE9+R1bQqZOig6iUGtv/FSCqV5zaHq1EmJYcL5b4Fj4ch642BfdpB4ZdAjYMPTaaWTl139QmdnbnthWJo/QVGJGg==;5:5wkrj5rmCsRA529p8WEK5uF1/8c6Jt4BwGobi6jRFhS3/xFAVWj3ixf3mrXc+ZOQxiFGGw44koZz7vdId7l+M+qAq7UNFpJ2ngiQ8/EgCAgM+2bhpOW1EVZy74jkNmIJcVu2lqLI0kxv/0ChXWtDHQ==;24:p6yAWvetRPFykeYTEVy0E/H61PA5RjrGVbzUCGjWQFVoJUyAR7DwrA506c78gL/sybOxiArls97Yt0W68X2Q/qfiHKedug0flriw/4xPt8U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;7:stoiWB6BBQyLRBjgSjZ3tTmGPzWcxXqxi8iqne+Bzu+2tT7RRkBHXIvPqmFvFydEe52YM5j22Z+T/zVxTKUgEE7LFAIxfDDG62M1HqSAPE7DaQT1dEVBIesoxCNyjpNa42Ru2/ItRL303WoYodW7otp4XWLwEGiQeJK+KfU4U07ChzuKpCD/eDGXf83fnuZr/2zbCdyMBJmj+/QO3mxF4okhlUU8FMmkzG7tAl7LdpXNGkXMvBAnJslNP1k/vwcA4R0kPRxtHCXVLI1SaZFv8LP8inB4/3A2ljuEiuKdVFR8B3GOYnYiAMHvptKuU4+Tpqam/2DfM9AEvxuC8TeC/Q== X-OriginatorOrg: qt.io X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2017 08:31:24.4887 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AMSPR02MB230 X-IsSubscribed: yes X-SW-Source: 2017-q2/txt/msg00155.txt.bz2 Signed-off-by: Ulf Hermann --- ChangeLog | 4 ++++ configure.ac | 3 +++ libgnu/ChangeLog | 5 +++++ libgnu/Makefile.am | 9 ++++++++- libgnu/ar.in.h | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 libgnu/ar.in.h diff --git a/ChangeLog b/ChangeLog index 71c73e5..a2655c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2017-05-04 Ulf Hermann + * configure.ac: Check for ar.h. + +2017-05-04 Ulf Hermann + * configure.ac: Check for sysconf() and GetSystemInfo(). Add a declaration of sysconf to config.h if GetSystemInfo() is available, but not sysconf(). diff --git a/configure.ac b/configure.ac index 2d3ad04..ba560d6 100644 --- a/configure.ac +++ b/configure.ac @@ -577,6 +577,9 @@ long sysconf(int name); #endif ]) +AC_CHECK_HEADERS(ar.h) +AM_CONDITIONAL(HAVE_AR_H, [test "x$ac_cv_header_ar_h" = "xyes"]) + dnl Check if we have for EM_BPF disassembly. AC_CHECK_HEADERS(linux/bpf.h) AM_CONDITIONAL(HAVE_LINUX_BPF_H, [test "x$ac_cv_header_linux_bpf_h" = "xyes"]) diff --git a/libgnu/ChangeLog b/libgnu/ChangeLog index aa0e603..3d30ce1 100644 --- a/libgnu/ChangeLog +++ b/libgnu/ChangeLog @@ -1,5 +1,10 @@ 2017-05-04 Ulf Hermann + * Makefile.am: If ar.h is unavailable, use our own version. + * ar.in.h: New file. + +2017-05-04 Ulf Hermann + * Makefile.am: If sysconf() is unavailable, but GetSystemInfo() is available, compile the win32 version of sysconf. * sysconf_win32.c: New file. diff --git a/libgnu/Makefile.am b/libgnu/Makefile.am index 05a8f61..d7af59a 100644 --- a/libgnu/Makefile.am +++ b/libgnu/Makefile.am @@ -35,7 +35,7 @@ noinst_LIBRARIES = MOSTLYCLEANFILES = MOSTLYCLEANDIRS = BUILT_SOURCES = -EXTRA_DIST = endian.in.h byteswap.in.h sys_mman.win32.h mman_win32.c sysconf_win32.c +EXTRA_DIST = endian.in.h byteswap.in.h sys_mman.win32.h mman_win32.c sysconf_win32.c ar.in.h CLEANFILES = SUFFIXES = @@ -53,6 +53,13 @@ BUILT_SOURCES += byteswap.h MOSTLYCLEANFILES += byteswap.h endif +if !HAVE_AR_H +ar.h: ar.in.h + $(AM_V_GEN)rm -f $@ && cat $< > $@ +BUILT_SOURCES += ar.h +MOSTLYCLEANFILES += ar.h +endif + if !HAVE_SYS_MMAN_H if USE_WIN32_MMAN sys/mman.h: sys_mman.win32.h diff --git a/libgnu/ar.in.h b/libgnu/ar.in.h new file mode 100644 index 0000000..acdae2f --- /dev/null +++ b/libgnu/ar.in.h @@ -0,0 +1,59 @@ +/* Header describing `ar' archive file format. + Copyright (C) 1996-2017 Free Software Foundation, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils 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 copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see . */ + +#ifndef _AR_H +#define _AR_H 1 + +/* Archive files start with the ARMAG identifying string. Then follows a + `struct ar_hdr', and as many bytes of member file data as its `ar_size' + member indicates, for each member file. */ + +#define ARMAG "!\n" /* String that begins an archive file. */ +#define SARMAG 8 /* Size of that string. */ + +#define ARFMAG "`\n" /* String in ar_fmag at end of each header. */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct ar_hdr +{ + char ar_name[16]; /* Member file name, sometimes / terminated. */ + char ar_date[12]; /* File date, decimal seconds since Epoch. */ + char ar_uid[6], ar_gid[6]; /* User and group IDs, in ASCII decimal. */ + char ar_mode[8]; /* File mode, in ASCII octal. */ + char ar_size[10]; /* File size, in ASCII decimal. */ + char ar_fmag[2]; /* Always contains ARFMAG. */ +}; + +#ifdef __cplusplus +} +#endif + +#endif /* ar.h */ -- 2.1.4