From patchwork Wed Nov 16 19:06:22 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 17526 Received: (qmail 83574 invoked by alias); 16 Nov 2016 19:06:42 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 83560 invoked by uid 89); 16 Nov 2016 19:06:41 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_NONE, SPF_PASS, URIBL_RED autolearn=ham version=3.3.2 spammy=commonobjpfx, common-objpfx, intend X-HELO: relay1.mentorg.com Date: Wed, 16 Nov 2016 19:06:22 +0000 From: Joseph Myers To: Subject: Enable linknamespace testing for libdl and libcrypt Message-ID: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) When I set up linknamespace testing, the lists of libraries that might contain functions from various standards were based on the -l options POSIX says may be required to find certain functions with the c99 utility. glibc has some POSIX functions in the libdl and libcrypt libraries, not mentioned in the definition of the c99 utility (so an implementation of that utility using glibc would need to use -ldl -lcrypt automatically). This patch adds those libraries to the ones considered in linknamespace testing for relevant standards. (The crypt functions are XSI only, present in XPG3 and above; the libdl ones were added in UNIX98, then moved from XSI to BASE in the 2008 edition of POSIX.) I intend to commit this once the fix for bug 20829 (which I tested in conjunction with this patch), crypt namespace issues, is in. 2016-11-16 Joseph Myers * conform/Makefile (linknamespace-libs): Rename to linknamespace-libs-thr. (linknamespace-libs-posix): New variable. (linknamespace-libs-xsi): Likewise. (linknamespace-libs-XPG3): Include libcrypt.a. (linknamespace-libs-XPG4): Use $(linknamespace-libs-XPG3). (linknamespace-libs-POSIX): Use $(linknamespace-libs-thr). (linknamespace-libs-UNIX98): Use $(linknamespace-libs-xsi). (linknamespace-libs-XOPEN2K): Likewise. (linknamespace-libs-XOPEN2K8): Likewise. (linknamespace-libs-POSIX2008): Use $(linknamespace-libs-posix). diff --git a/conform/Makefile b/conform/Makefile index 7883624..5862f70 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -209,18 +209,23 @@ $(linknamespace-symlists-tests): $(objpfx)symlist-%: list-header-symbols.pl $(evaluate-test) linknamespace-libs-isoc = $(common-objpfx)libc.a $(common-objpfx)math/libm.a -linknamespace-libs = $(linknamespace-libs-isoc) \ - $(common-objpfx)rt/librt.a $(static-thread-library) +linknamespace-libs-thr = $(linknamespace-libs-isoc) \ + $(common-objpfx)rt/librt.a $(static-thread-library) +linknamespace-libs-posix = $(linknamespace-libs-thr) \ + $(common-objpfx)dlfcn/libdl.a +linknamespace-libs-xsi = $(linknamespace-libs-posix) \ + $(common-objpfx)crypt/libcrypt.a linknamespace-libs-ISO = $(linknamespace-libs-isoc) linknamespace-libs-ISO99 = $(linknamespace-libs-isoc) linknamespace-libs-ISO11 = $(linknamespace-libs-isoc) -linknamespace-libs-XPG3 = $(linknamespace-libs-isoc) -linknamespace-libs-XPG4 = $(linknamespace-libs-isoc) -linknamespace-libs-POSIX = $(linknamespace-libs) -linknamespace-libs-UNIX98 = $(linknamespace-libs) -linknamespace-libs-XOPEN2K = $(linknamespace-libs) -linknamespace-libs-POSIX2008 = $(linknamespace-libs) -linknamespace-libs-XOPEN2K8 = $(linknamespace-libs) +linknamespace-libs-XPG3 = $(linknamespace-libs-isoc) \ + $(common-objpfx)crypt/libcrypt.a +linknamespace-libs-XPG4 = $(linknamespace-libs-XPG3) +linknamespace-libs-POSIX = $(linknamespace-libs-thr) +linknamespace-libs-UNIX98 = $(linknamespace-libs-xsi) +linknamespace-libs-XOPEN2K = $(linknamespace-libs-xsi) +linknamespace-libs-POSIX2008 = $(linknamespace-libs-posix) +linknamespace-libs-XOPEN2K8 = $(linknamespace-libs-xsi) $(linknamespace-symlist-stdlibs-tests): $(objpfx)symlist-stdlibs-%: \ $(linknamespace-libs)