From ea13d77ca17247e69ee5c2724d9671e5731185b0 Mon Sep 17 00:00:00 2001 From: Marc Espie Date: Tue, 16 Apr 2002 12:00:15 +0000 Subject: Stumbled upon a very inefficient construct by mistake... Enter it as a regression test, so it can get fixed. --- regress/usr.bin/make/Makefile | 7 +- regress/usr.bin/make/mk16 | 214 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 219 insertions(+), 2 deletions(-) create mode 100644 regress/usr.bin/make/mk16 (limited to 'regress') diff --git a/regress/usr.bin/make/Makefile b/regress/usr.bin/make/Makefile index 4068f1e2571..4adb262be68 100644 --- a/regress/usr.bin/make/Makefile +++ b/regress/usr.bin/make/Makefile @@ -1,7 +1,7 @@ -# $OpenBSD: Makefile,v 1.15 2002/02/26 16:54:47 espie Exp $ +# $OpenBSD: Makefile,v 1.16 2002/04/16 12:00:14 espie Exp $ # We don't pass t7, t13, t14... -REGRESSTARGETS=t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 +REGRESSTARGETS=t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16 MALLOC_OPTIONS?=AZJ t1: t1.out @@ -72,6 +72,9 @@ t15: touch t15file cd ${.CURDIR} && ulimit -t 2 && env -i PATH=${PATH} MALLOC_OPTIONS=${MALLOC_OPTIONS} ${MAKE} -r -f mk15 2>/dev/null +t16: + cd ${.CURDIR} && env -i PATH=${PATH} MALLOC_OPTIONS=${MALLOC_OPTIONS} ${MAKE} -r -f mk16 + z.a: touch $@ diff --git a/regress/usr.bin/make/mk16 b/regress/usr.bin/make/mk16 new file mode 100644 index 00000000000..92518bfc96e --- /dev/null +++ b/regress/usr.bin/make/mk16 @@ -0,0 +1,214 @@ +# $OpenBSD: mk16,v 1.1 2002/04/16 12:00:14 espie Exp $ + +all: + @echo "That's all folks" + +# This kind of construction is very inefficient currently + +.for i in 1 2 3 4 5 + perlfork 1 pod/perlfork.pod \ + perlform 1 pod/perlform.pod \ + perlfunc 1 pod/perlfunc.pod \ + perlguts 1 pod/perlguts.pod \ + perlhack 1 pod/perlhack.pod \ + perlhist 1 pod/perlhist.pod \ + perlintern 1 pod/perlintern.pod \ + perlipc 1 pod/perlipc.pod \ + perllexwarn 1 pod/perllexwarn.pod \ + perllocale 1 pod/perllocale.pod \ + perllol 1 pod/perllol.pod \ + perlmod 1 pod/perlmod.pod \ + perlmodinstall 1 pod/perlmodinstall.pod \ + perlmodlib 1 pod/perlmodlib.pod \ + perlnewmod 1 pod/perlnewmod.pod \ + perlnumber 1 pod/perlnumber.pod \ + perlobj 1 pod/perlobj.pod \ + perlop 1 pod/perlop.pod \ + perlopentut 1 pod/perlopentut.pod \ + perlpod 1 pod/perlpod.pod \ + perlport 1 pod/perlport.pod \ + perlre 1 pod/perlre.pod \ + perlref 1 pod/perlref.pod \ + perlreftut 1 pod/perlreftut.pod \ + perlrequick 1 pod/perlrequick.pod \ + perlretut 1 pod/perlretut.pod \ + perlrun 1 pod/perlrun.pod \ + perlsec 1 pod/perlsec.pod \ + perlstyle 1 pod/perlstyle.pod \ + perlsub 1 pod/perlsub.pod \ + perlsyn 1 pod/perlsyn.pod \ + perlthrtut 1 pod/perlthrtut.pod \ + perltie 1 pod/perltie.pod \ + perltoc 1 pod/perltoc.pod \ + perltodo 1 pod/perltodo.pod \ + perltoot 1 pod/perltoot.pod \ + perltootc 1 pod/perltootc.pod \ + perltrap 1 pod/perltrap.pod \ + perlunicode 1 pod/perlunicode.pod \ + perlvar 1 pod/perlvar.pod \ + perlxs 1 pod/perlxs \ + perlxstut 1 pod/perlxstut \ + pl2pm 1 utils/pl2pm \ + pod2html 1 pod/pod2html \ + pod2man 1 pod/pod2man \ + pod2text 1 pod/pod2text \ + pod2usage 1 pod/pod2usage \ + podchecker 1 pod/podchecker \ + podselect 1 pod/podselect \ + pstruct 1 utils/pstruct \ + s2p 1 x2p/s2p \ + splain 1 utils/splain \ + xsubpp 1 lib/ExtUtils/xsubpp \ + AnyDBM_File 3p lib/AnyDBM_File.pm \ + AnyDBM_File 3p lib/AnyDBM_File.pm \ + AutoLoader 3p lib/AutoLoader.pm \ + AutoSplit 3p lib/AutoSplit.pm \ + B 3p ext/B/B.pm \ + B::Asmdata 3p ext/B/B/Asmdata.pm \ + B::Assembler 3p ext/B/B/Assembler.pm \ + B::Bblock 3p ext/B/B/Bblock.pm \ + B::Bytecode 3p ext/B/B/Bytecode.pm \ + B::C 3p ext/B/B/C.pm \ + B::CC 3p ext/B/B/CC.pm \ + B::Concise 3p ext/B/B/Concise.pm \ + B::Debug 3p ext/B/B/Debug.pm \ + B::Deparse 3p ext/B/B/Deparse.pm \ + B::Disassembler 3p ext/B/B/Disassembler.pm \ + B::Lint 3p ext/B/B/Lint.pm \ + B::Showlex 3p ext/B/B/Showlex.pm \ + B::Stackobj 3p ext/B/B/Stackobj.pm \ + B::Terse 3p ext/B/B/Terse.pm \ + B::Xref 3p ext/B/B/Xref.pm \ + Benchmark 3p lib/Benchmark.pm \ + ByteLoader 3p ext/ByteLoader/ByteLoader.pm \ + CGI 3p lib/CGI.pm \ + CGI::Apache 3p lib/CGI/Apache.pm \ + CGI::Carp 3p lib/CGI/Carp.pm \ + CGI::Cookie 3p lib/CGI/Cookie.pm \ + CGI::Fast 3p lib/CGI/Fast.pm \ + CGI::Pretty 3p lib/CGI/Pretty.pm \ + CGI::Push 3p lib/CGI/Push.pm \ + CGI::Switch 3p lib/CGI/Switch.pm \ + CGI::Util 3p lib/CGI/Util.pm \ + CPAN 3p lib/CPAN.pm \ + CPAN::FirstTime 3p lib/CPAN/FirstTime.pm \ + CPAN::Nox 3p lib/CPAN/Nox.pm \ + Carp 3p lib/Carp.pm \ + Carp::Heavy 3p lib/Carp/Heavy.pm \ + Class::Struct 3p lib/Class/Struct.pm \ + Config 3p lib/Config.pm \ + Cwd 3p lib/Cwd.pm \ + DB 3p lib/DB.pm \ + DB_File 3p ext/DB_File/DB_File.pm \ + Data::Dumper 3p ext/Data/Dumper/Dumper.pm \ + Devel::DProf 3p ext/Devel/DProf/DProf.pm \ + Devel::Peek 3p ext/Devel/Peek/Peek.pm \ + Devel::SelfStubber 3p lib/Devel/SelfStubber.pm \ + DirHandle 3p lib/DirHandle.pm \ + Dumpvalue 3p lib/Dumpvalue.pm \ + DynaLoader 3p ext/DynaLoader/XSLoader_pm.PL \ + English 3p lib/English.pm \ + Env 3p lib/Env.pm \ + Errno 3p ext/Errno/Errno_pm.PL \ + Exporter 3p lib/Exporter.pm \ + Exporter::Heavy 3p lib/Exporter/Heavy.pm \ + ExtUtils::Command 3p lib/ExtUtils/Command.pm \ + ExtUtils::Embed 3p lib/ExtUtils/Embed.pm \ + ExtUtils::Install 3p lib/ExtUtils/Install.pm \ + ExtUtils::Installed 3p lib/ExtUtils/Installed.pm \ + ExtUtils::Liblist 3p lib/ExtUtils/Liblist.pm \ + ExtUtils::MM_Unix 3p lib/ExtUtils/MM_Unix.pm \ + ExtUtils::MakeMaker 3p lib/ExtUtils/MakeMaker.pm \ + ExtUtils::Manifest 3p lib/ExtUtils/Manifest.pm \ + ExtUtils::Miniperl 3p lib/ExtUtils/Miniperl.pm \ + ExtUtils::Mkbootstrap 3p lib/ExtUtils/Mkbootstrap.pm \ + ExtUtils::Mksymlists 3p lib/ExtUtils/Mksymlists.pm \ + ExtUtils::Packlist 3p lib/ExtUtils/Packlist.pm \ + ExtUtils::testlib 3p lib/ExtUtils/testlib.pm \ + Fatal 3p lib/Fatal.pm \ + Fcntl 3p lib/Fcntl.pm \ + File::Basename 3p lib/File/Basename.pm \ + File::CheckTree 3p lib/File/CheckTree.pm \ + File::Compare 3p lib/File/Compare.pm \ + File::Copy 3p lib/File/Copy.pm \ + File::DosGlob 3p lib/File/DosGlob.pm \ + File::Find 3p lib/File/Find.pm \ + File::Glob 3p lib/File/Glob.pm \ + File::Path 3p lib/File/Path.pm \ + File::Spec 3p lib/File/Spec.pm \ + File::Spec::Functions 3p lib/File/Spec/Functions.pm \ + File::Spec::Unix 3p lib/File/Spec/Unix.pm \ + File::Temp 3p lib/File/Temp.pm \ + File::stat 3p lib/File/stat.pm \ + FileCache 3p lib/FileCache.pm \ + FileHandle 3p lib/FileHandle.pm \ + FindBin 3p lib/FindBin.pm \ + Getopt::Long 3p lib/Getopt/Long.pm \ + Getopt::Std 3p lib/Getopt/Std.pm \ + I18N::Collate 3p lib/I18N/Collate.pm \ + IO 3p lib/IO.pm \ + IO::Dir 3p lib/IO/Dir.pm \ + IO::File 3p lib/IO/File.pm \ + IO::Handle 3p lib/IO/Handle.pm \ + IO::Pipe 3p lib/IO/Pipe.pm \ + IO::Poll 3p lib/IO/Poll.pm \ + IO::Seekable 3p lib/IO/Seekable.pm \ + IO::Select 3p lib/IO/Select.pm \ + IO::Socket 3p lib/IO/Socket.pm \ + IO::Socket::INET 3p lib/IO/Socket/INET.pm \ + IO::Socket::UNIX 3p lib/IO/Socket/UNIX.pm \ + IPC::Msg 3p lib/IPC/Msg.pm \ + IPC::Open2 3p lib/IPC/Open2.pm \ + IPC::Open3 3p lib/IPC/Open3.pm \ + IPC::Semaphore 3p lib/IPC/Semaphore.pm \ + IPC::SysV 3p lib/IPC/SysV.pm \ + Math::BigFloat 3p lib/Math/BigFloat.pm \ + Math::BigInt 3p lib/Math/BigInt.pm \ + Math::Complex 3p lib/Math/Complex.pm \ + Math::Trig 3p lib/Math/Trig.pm \ + NDBM_File 3p lib/NDBM_File.pm \ + Net::Ping 3p lib/Net/Ping.pm \ + Net::hostent 3p lib/Net/hostent.pm \ + Net::netent 3p lib/Net/netent.pm \ + Net::protoent 3p lib/Net/protoent.pm \ + Net::servent 3p lib/Net/servent.pm \ + O 3p lib/O.pm \ + ODBM_File 3p lib/ODBM_File.pm \ + Opcode 3p lib/Opcode.pm \ + POSIX 3p lib/POSIX.pod \ + Pod::Checker 3p lib/Pod/Checker.pm \ + Pod::Find 3p lib/Pod/Find.pm \ + Pod::Html 3p lib/Pod/Html.pm \ + Pod::InputObjects 3p lib/Pod/InputObjects.pm \ + Pod::LaTeX 3p lib/Pod/LaTeX.pm \ + Pod::Man 3p lib/Pod/Man.pm \ + Pod::ParseUtils 3p lib/Pod/ParseUtils.pm \ + Pod::Parser 3p lib/Pod/Parser.pm \ + Pod::Plainer 3p lib/Pod/Plainer.pm \ + Pod::Select 3p lib/Pod/Select.pm \ + Pod::Text 3p lib/Pod/Text.pm \ + Pod::Text::Color 3p lib/Pod/Text/Color.pm \ + Pod::Text::Overstrike 3p lib/Pod/Text/Overstrike.pm \ + Pod::Text::Termcap 3p lib/Pod/Text/Termcap.pm \ + Pod::Usage 3p lib/Pod/Usage.pm \ + SDBM_File 3p lib/SDBM_File.pm \ + Safe 3p lib/Safe.pm \ + Search::Dict 3p lib/Search/Dict.pm \ + SelectSaver 3p lib/SelectSaver.pm \ + SelfLoader 3p lib/SelfLoader.pm \ + Shell 3p lib/Shell.pm \ + Socket 3p lib/Socket.pm \ + Symbol 3p lib/Symbol.pm \ + Sys::Hostname 3p lib/Sys/Hostname.pm \ + Sys::Syslog 3p lib/Sys/Syslog.pm \ + Term::ANSIColor 3p lib/Term/ANSIColor.pm \ + Term::Cap 3p lib/Term/Cap.pm \ + Term::Complete 3p lib/Term/Complete.pm \ + Term::ReadLine 3p lib/Term/ReadLine.pm \ + Test 3p lib/Test.pm \ + Test::Harness 3p lib/Test/Harness.pm \ + Text::Abbrev 3p lib/Text/Abbrev.pm \ + Text::ParseWords 3p lib/Text/ParseWords.pm \ + Text::Soundex 3p lib/Text/Soundex.pm + +.endfor -- cgit v1.2.3