From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx07-00178001.pphosted.com (mx08-00178001.pphosted.com [91.207.212.93]) by sourceware.org (Postfix) with ESMTPS id BBAF73858C50 for ; Wed, 5 Oct 2022 09:46:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org BBAF73858C50 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=foss.st.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=foss.st.com Received: from pps.filterd (m0046661.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 2958QIIG029757 for ; Wed, 5 Oct 2022 11:46:57 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; h=message-id : date : mime-version : subject : to : references : from : in-reply-to : content-type : content-transfer-encoding; s=selector1; bh=JRV2BYpcw5VfSYjmE/Fjv3Z5afopX4u2KxZ29Nfi+L0=; b=2bTj2lFUQkqo+1y9zvSghV9zbj39PEr7rT2xKzkHQaTGgALvzPI8v+MS11OkyY/Ltjw6 jWOFICFQhMkAJtLwx558BXOOCkuZqFp9XN54lhK9koJPC/6drhA/HAkkThL6Cn1ofKVD /GTQlbCGsKoNxT+tG9NLGXdIeMSQ8oIGe5qPompleQwXo2Qj6gBieqoIBGxu2ohAT5NM WcYOkus06Ja4VM8KIDPa/G+X95yzbxp+MFBXxCbyMEIMCjmHdEDAHl8Uu4W1RK5gf2fY xt+i/xXedvlIsoSWkbPFuxPP+SIyL+AJp8QdY0hC0BkO4J2Bi7h1tcLkLkgDrq2ZlLtv CQ== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 3k16ds0jty-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 05 Oct 2022 11:46:57 +0200 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 95B0010002A for ; Wed, 5 Oct 2022 11:46:51 +0200 (CEST) Received: from Webmail-eu.st.com (shfdag1node3.st.com [10.75.129.71]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id A95E921A20D for ; Wed, 5 Oct 2022 11:46:51 +0200 (CEST) Received: from [10.252.14.246] (10.75.127.120) by SHFDAG1NODE3.st.com (10.75.129.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.2375.31; Wed, 5 Oct 2022 11:46:51 +0200 Message-ID: Date: Wed, 5 Oct 2022 11:46:50 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.0 Subject: Re: [PATCH] testsuite: /dev/null is not accessible on Windows Content-Language: en-US To: References: <20220929173809.2234264-1-torbjorn.svensson@foss.st.com> <2bdafbbd-9073-aa4e-30bb-2c7d2c7065c5@gmail.com> From: Torbjorn SVENSSON In-Reply-To: <2bdafbbd-9073-aa4e-30bb-2c7d2c7065c5@gmail.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.75.127.120] X-ClientProxiedBy: GPXDAG2NODE4.st.com (10.75.127.68) To SHFDAG1NODE3.st.com (10.75.129.71) X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.528,FMLib:17.11.122.1 definitions=2022-10-05_01,2022-09-29_03,2022-06-22_01 X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi, On 2022-10-05 11:34, Jonathan Yong via Gcc-patches wrote: > On 9/29/22 17:38, Torbjörn SVENSSON via Gcc-patches wrote: >> When running the DejaGNU testsuite on a toolchain built for native >> Windows, the path /dev/null can't be used to open a stream to void. >> On native Windows, the resource is instead named "nul". >> >> The error would look like this: >> c:/arm-11.3.rel1/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: cannot find @/dev/null: No such file or directory >> >> Patch has been verified on Windows and Linux. >> >> gcc/testsuite: >> >>     * gcc.misc-tests/outputs.exp: Use "@nul" for Windows, >>     "@/dev/null" for other environments. >> >> Co-Authored-By: Yvan ROUX  >> Signed-off-by: Torbjörn SVENSSON  >> --- >>   gcc/testsuite/gcc.misc-tests/outputs.exp | 17 ++++++++++++----- >>   1 file changed, 12 insertions(+), 5 deletions(-) >> >> diff --git a/gcc/testsuite/gcc.misc-tests/outputs.exp >> b/gcc/testsuite/gcc.misc-tests/outputs.exp >> index ab919db1ccb..3fe7270fa63 100644 >> --- a/gcc/testsuite/gcc.misc-tests/outputs.exp >> +++ b/gcc/testsuite/gcc.misc-tests/outputs.exp >> @@ -78,6 +78,13 @@ if {[board_info $dest exists output_format]} { >>       append link_options " additional_flags=-Wl,-oformat,[board_info >> $dest output_format]" >>   } >> + >> +set devnull "/dev/null" >> +if { [info exists ::env(OS)] && [string match "Windows*" $::env(OS)] } { >> +    # Windows uses special file named "nul" as a substitute for >> /dev/null >> +    set devnull "nul" >> +} >> + >>   # Avoid possible influence from the make jobserver, >>   # otherwise ltrans0.ltrans_args files may be missing. >>   if [info exists env(MAKEFLAGS)] { >> @@ -353,10 +360,10 @@ outest "$b-21 exe savetmp named2" $mult "-o >> $b.exe -save-temps" {} {{--1.i --1.s >>   # Additional files are created when an @file is used >>   if !$skip_atsave { >> -outest "$b-22 exe savetmp namedb-2" $sing "@/dev/null -o $b.exe >> -save-temps" {} {{--0.i --0.s --0.o .args.0 !!$gld .ld1_args !0 .exe}} >> -outest "$b-23 exe savetmp named2-2" $mult "@/dev/null -o $b.exe >> -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o .args.0 !!$gld >> .ld1_args !0 .exe}} >> -outest "$b-24 exe savetmp named2-3" $mult "@/dev/null -I dummy -o >> $b.exe -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o -args.0 >> -args.1 .args.2 !!$gld .ld1_args !0 .exe}} >> -outest "$b-25 exe savetmp named2-4" $mult "@/dev/null -I dummy -L >> dummy -o $b.exe -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o >> -args.0 -args.1 .args.2 .args.3 !!$gld .ld1_args !0 .exe}} >> +outest "$b-22 exe savetmp namedb-2" $sing "@$devnull -o $b.exe >> -save-temps" {} {{--0.i --0.s --0.o .args.0 !!$gld .ld1_args !0 .exe}} >> +outest "$b-23 exe savetmp named2-2" $mult "@$devnull -o $b.exe >> -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o .args.0 !!$gld >> .ld1_args !0 .exe}} >> +outest "$b-24 exe savetmp named2-3" $mult "@$devnull -I dummy -o >> $b.exe -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o -args.0 >> -args.1 .args.2 !!$gld .ld1_args !0 .exe}} >> +outest "$b-25 exe savetmp named2-4" $mult "@$devnull -I dummy -L >> dummy -o $b.exe -save-temps" {} {{--1.i --1.s --1.o --2.i --2.s --2.o >> -args.0 -args.1 .args.2 .args.3 !!$gld .ld1_args !0 .exe}} >>   } >>   # Setting the main output to a dir selects it as the default aux&dump >> @@ -714,7 +721,7 @@ outest "$b-291 lto mult named-2" $mult "-o $b.exe >> -O2 -flto -fno-use-linker-plug >>   outest "$b-292 lto sing nameddir-2" $sing "-o dir/$b.exe -O2 -flto >> -fno-use-linker-plugin -flto-partition=one -fdump-ipa-icf-optimized >> -fdump-rtl-final -fstack-usage" {dir/} {{--0.c.???i.icf >> --0.c.???r.final .wpa.???i.icf .ltrans0.ltrans.???r.final >> .ltrans0.ltrans.su .exe} {}} >>   outest "$b-293 lto mult nameddir-2" $mult "-o dir/$b.exe -O2 -flto >> -fno-use-linker-plugin -flto-partition=one -fdump-ipa-icf-optimized >> -fdump-rtl-final -fstack-usage" {dir/} {{--1.c.???i.icf >> --1.c.???r.final --2.c.???i.icf --2.c.???r.final .wpa.???i.icf >> .ltrans0.ltrans.???r.final .ltrans0.ltrans.su .exe} {}} >>   if !$skip_atsave { >> -outest "$b-294 lto sing unnamed-3" $sing "@/dev/null -O2 -flto >> -fno-use-linker-plugin -flto-partition=one -fdump-ipa-icf-optimized >> -fdump-rtl-final -fstack-usage -save-temps $oaout" {} >> {{a--0.c.???i.icf a--0.c.???r.final a.wpa.???i.icf >> a.ltrans0.ltrans.???r.final a.ltrans0.ltrans.su a--0.o a--0.s a--0.i >> a.ltrans0.o a.ltrans.out a.ltrans0.ltrans.o a.ltrans0.ltrans_args >> a.args.0 a.ltrans0.ltrans.s a.wpa.args.0 a.lto_args a.ld1_args >> a.ltrans_args a.ltrans0.ltrans.args.0 a.ld_args $aout}} >> +outest "$b-294 lto sing unnamed-3" $sing "@$devnull -O2 -flto >> -fno-use-linker-plugin -flto-partition=one -fdump-ipa-icf-optimized >> -fdump-rtl-final -fstack-usage -save-temps $oaout" {} >> {{a--0.c.???i.icf a--0.c.???r.final a.wpa.???i.icf >> a.ltrans0.ltrans.???r.final a.ltrans0.ltrans.su a--0.o a--0.s a--0.i >> a.ltrans0.o a.ltrans.out a.ltrans0.ltrans.o a.ltrans0.ltrans_args >> a.args.0 a.ltrans0.ltrans.s a.wpa.args.0 a.lto_args a.ld1_args >> a.ltrans_args a.ltrans0.ltrans.args.0 a.ld_args $aout}} >>   } >>   } > > Thanks, looks good to me, will push to master soon. > Thanks for the review. I can push myself if that's easier for you. Kind regards, Torbjörn