NetBSD Problem Report #52806
From www@NetBSD.org Sun Dec 10 14:27:51 2017
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id 27E647A195
for <gnats-bugs@gnats.NetBSD.org>; Sun, 10 Dec 2017 14:27:51 +0000 (UTC)
Message-Id: <20171210142740.3994C7A260@mollari.NetBSD.org>
Date: Sun, 10 Dec 2017 14:27:40 +0000 (UTC)
From: venture37@geeklan.co.uk
Reply-To: venture37@geeklan.co.uk
To: gnats-bugs@NetBSD.org
Subject: libiberty build fails on Cygwin due to process.h not being available in the search path
X-Send-Pr-Version: www-1.0
>Number: 52806
>Category: toolchain
>Synopsis: libiberty build fails on Cygwin due to process.h not being available in the search path
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: toolchain-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Dec 10 14:30:00 +0000 2017
>Last-Modified: Sun Dec 10 17:40:00 +0000 2017
>Originator: Sevan Janiyan
>Release: NetBSD-8
>Organization:
>Environment:
CYGWIN_NT-6.1 X61s 2.9.0(0.318/5/3) 2017-09-12 10:18 x86_64 Cygwin
>Description:
Attempting to build an amd64 release on Cygwin fails when building components from libiberty. The configure stage detects the availability of process.h (Cygwin specific header) and sets HAVE_PROCESS_H but the build process fails due to the header not being in its search path.
# create liblto_plugin/pex-unix.d
CC=/cygdrive/c/Users/Me/Downloads/src/obj/tooldir.CYGWIN_NT-6.1-2.9.0-x86_64/bin/x86_64--netbsd-gcc /cygdrive/c/Users/Me/Downloads/src/obj/tooldir.CYGWIN_NT-6.1-2.9.0-x86_64/bin/nbmkdep -f pex-unix.d.tmp -- -std=gnu99 --sysroot=/cygdrive/c/Users/Me/Downloads/src/obj/destdir.amd64 -I/cygdrive/c/Users/Me/Downloads/src/external/gpl3/gcc/dist/include -I. -DHAVE_CONFIG_H -Dxstrdup=strdup -Dxexit=exit -Dxcalloc=calloc -Dxmalloc=malloc -Dxrealloc=realloc /cygdrive/c/Users/Me/Downloads/src/external/gpl3/gcc/dist/libiberty/pex-unix.c && mv pex-unix.d.tmp pex-unix.d
--- dependall-libexec ---
--- dependall ---
--- dependall-external ---
/cygdrive/c/Users/Me/Downloads/src/external/gpl3/gcc/dist/libiberty/pex-unix.c:59:21: fatal error: process.h: No such file or directory
compilation terminated.
nbmkdep: compile failed.
*** [pex-unix.d] Error code 1
nbmake[9]: stopped in /cygdrive/c/Users/Me/Downloads/src/external/gpl3/gcc/lib/liblto_plugin
1 error
If I remove the check for process.h and rebuild, it fails because spawnve() and such are not found (because they're prototyped in process.h)
>How-To-Repeat:
./build.sh -U -m amd64 release
>Fix:
>Audit-Trail:
From: coypu@sdf.org
To: gnats-bugs@netbsd.org
Cc:
Subject: Re: toolchain/52806: libiberty build fails on Cygwin due to
process.h not being available in the search path
Date: Sun, 10 Dec 2017 16:27:44 +0000
What is your search path?
gcc -E -Wp,-v - test.c
where is process.h? where is e.g. stdio.h?
From: Sevan Janiyan <venture37@geeklan.co.uk>
To: gnats-bugs@NetBSD.org
Cc:
Subject: Re: toolchain/52806: libiberty build fails on Cygwin due to process.h
not being available in the search path
Date: Sun, 10 Dec 2017 17:36:22 +0000
On 10/12/2017 16:30, coypu@sdf.org wrote:
> What is your search path?
> gcc -E -Wp,-v - test.c
97 %
/cygdrive/c/Users/Me/Downloads/src/obj/tooldir.CYGWIN_NT-6.1-2.9.0-x86_64/bin/x86_64--netbsd-gcc
-E -Wp,-v - test.c
ignoring nonexistent directory "/usr/include/gcc-5"
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/cygdrive/c/Users/Me/Downloads/src/obj/tooldir.CYGWIN_NT-6.1-2.9.0-x86_64/lib/gcc/x86_64--netbsd/5.5.0/../../../../x86_64--netbsd/include"
#include "..." search starts here:
#include <...> search starts here:
/cygdrive/c/Users/Me/Downloads/src/obj/tooldir.CYGWIN_NT-6.1-2.9.0-x86_64/lib/gcc/x86_64--netbsd/5.5.0/include-fixed
/usr/include
End of search list.
> where is process.h? where is e.g. stdio.h?
process.h is in /usr/include
The header of the file describes it as:
/* cygwin/process.h. Define spawn family of functions as provided by
Cygwin.
The original file of this name is a MS/DOS invention.
This file is part of Cygwin.
This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2014
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.