From patchwork Fri Mar 31 14:55:54 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Marchi X-Patchwork-Id: 19784 Received: (qmail 99321 invoked by alias); 31 Mar 2017 14:56:17 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 99302 invoked by uid 89); 31 Mar 2017 14:56:15 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.0 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_LAZY_DOMAIN_SECURITY autolearn=ham version=3.3.2 spammy= X-HELO: sesbmg23.ericsson.net Received: from sesbmg23.ericsson.net (HELO sesbmg23.ericsson.net) (193.180.251.37) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 31 Mar 2017 14:56:14 +0000 Received: from ESESSHC008.ericsson.se (Unknown_Domain [153.88.183.42]) by (Symantec Mail Security) with SMTP id D1.FF.27378.B0E6ED85; Fri, 31 Mar 2017 16:56:12 +0200 (CEST) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.42) with Microsoft SMTP Server (TLS) id 14.3.339.0; Fri, 31 Mar 2017 16:56:11 +0200 Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none; sourceware.org; dmarc=none action=none header.from=ericsson.com; Received: from elxcz23q12-y4.ca.am.ericsson.se (192.75.88.130) by VI1PR07MB1726.eurprd07.prod.outlook.com (10.166.143.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1019.8; Fri, 31 Mar 2017 14:56:09 +0000 From: Simon Marchi To: CC: Simon Marchi Subject: [PATCH v2] gdbserver: Suffix generated C files with -generated Date: Fri, 31 Mar 2017 10:55:54 -0400 Message-ID: <20170331145554.26349-1-simon.marchi@ericsson.com> In-Reply-To: References: MIME-Version: 1.0 X-ClientProxiedBy: DM5PR09CA0027.namprd09.prod.outlook.com (10.172.184.141) To VI1PR07MB1726.eurprd07.prod.outlook.com (10.166.143.22) X-MS-Office365-Filtering-Correlation-Id: 1aebccf0-fad5-4187-5115-08d47846112d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:VI1PR07MB1726; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1726; 3:ofHLALr72K7Jt9TZvo/P/8EI4ZX5HqzC1heMOY3ETvZIY8fhlaWDUzu/1m+brkQfKCKiTogNRA/KJ9hJ6pDcVCWN9GsT1O511lWyjVT2c8gy1wNIGnFq6FmOUkc/T/QFzCfm1RSedmAy3TPJxw8AAZ8FsO23vzxhGJkIxZdaF8vpYWsrmwyXBel29/q/I2rFefIFQMmdOTkFBwbT42NuXQ85/iecxZZ898/bPYbB18bChdWDNXpwmlaof54M2jVnuVO1EpOP6jshUZUJtrEaaPgrjyfBw/pCpe1nyFFasfuA0WycbYZKad9G3whNVQqdDFj6u1d2uW8JLfstBu3Bfw==; 25:yXjtjwc+e++3aiHRh0XV0UcOCD9MeQnn85u2J/OJRkanz6Y2NouROgu2Snx9MC1GXBCMCDYywsR+ZANczZifspYpsXNP62T+rJQHqws2U58ujb8dgHuGCHBy1c5yw6dMpBIwRg/bDRW1Vj3wTP3D89+q7V7wjWsCz2qCeOXCaU/VCUU4JqQBJdvAwUh+ESrOEJY03yikACoAi6T9/6WSrydHovJH9Qc+vPipPUqKmBBwXT11ej9+QCUVC0CFJ+TL5Lqn9VQEfnXkFqW8t+yG8H6juNW4tXvQtPyLbBFUmz3WbvfcsPdw4ifPTqJJqu7KzLm1xgorGxQkn96yjLxFQMhcWLTtXCld8qw/I+MWe1db8Xa91shPfb8hzFXN+/RInxc11k5JIAyX57S0diOO6MGQ2vg0ebreZgbByrTlYGLx5UMtQJAu2nzJxltdOKi7PWspdKspY0reOrT9UROidg== X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1726; 31:/7h482Rz41X1BXLtevO/9WKc/Vz/ExM6s5PODCnYG1Bh+Aco7GhOCbLNrW7A2k/ot2Hqy3hZ02McD0XrN8y+kmITvD2GA58VC6x9ucrr1DtSeu2hMBMQOiz9dynCMcwjcPfhy11WpUGn/Kd6av7o/+GPuN64qBOUD0n0dXR5NYscKKxbu4yDS/U6Qssz/Bwfv+B7By9elEPESAASHeM2C9VEa5WBTuk0D1DB/rZdGbOPahG2UPRHI2bgrGBiX0WlHehvmOV770VJLAiPJkHaYi5q5kcNURvfmelbc4esPxI=; 20:imofe98ThTxUaCxirlVk8Vg79Q0jIUF/JZ/mgZBYNdlcHIvilA2/MtcvICzROWZKJO8kd5iSS5zkY+pMTmUIF2n1BNJzONYaHIiLSo/t87qMxPLBBGQTSfzAWOcLndh+5JfvuQOmf3/c8d+cY53BJRCa3vfdEcN3BuySyWd4IbMAE2xlJ1DZZvL11ZqRdYaGcaXDDvowPJxVxx5z64zf9/4sqrXx6hvL1KLZ5hUAqmVNz9aGetykyDIA+f/po/cCqqVfSep8GlmYLiU4hNb4Ny+WoF6AxlEzBnJv0i2jLlCwTe3m0S5sDDkKiuAY9txysXhkiHWNL4+/icKn2eHEWmkoqc4Hks2lFK7yFZz99+QvDfTrb+2ZAEW7H0fcLYg2ZEgYp1+09rr20yVo5J2dCnUZxp6rVPt2y/5xbckfB+efm5dsqLPs9fmaPFhe51f35wUTw9rKgDq0E6XQnugZZf1vjyPjGarBhfq2OdDfG0cHuSCvGPC8y6BBQblp+Fos X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(6302227615730)(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93001095)(6041248)(20161123560025)(20161123564025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(6072148); SRVR:VI1PR07MB1726; BCL:0; PCL:0; RULEID:; SRVR:VI1PR07MB1726; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1726; 4:cHCUDwMD5SqtGdDHT4RHzfnyj+mGWqQWdNFFqVfD+a6oI4BZuobpXPeuyuOu2ou84tcN/TmDCB/EqXWcRLiRF1SN4ixriUGNvgV1152Hmwo1q4M0jAdgl6uRt/Js5nFAVpJhTJi3zmOR0gC/nPBi4Mb5CPFwmc9IwnfJIbbrOTdb+kC33uh5zSw+pWv8uN11t9lS8RD+atiz0GMjuUWH4G/ebLuNRLDOvmbimNoRB/wCABnyutV9BbbJpxGVrhEYV6uk34S9dWPRe2lyK96B2F5WQ/GWlm3UHmgD8JVzyyqo8+hLfuU/fKerkpdHbQc65Z1NmLcBza7e5t7AXJVeaE+YS/y06Jo+M+5TtvuboL3Wf2T1DSNCehAcbj2OK7xW2Fvw1g7KEE1GNhTAjZYiXgGKwnc3y0GdWHRVALt524zWPcbZCfX6RV1FElmYuFGrWLre4GOrOrF9o4rBxP9SeKSUO0d0T4EaGPqrWsVnw4px/gSU5MepwOkDaoi9e0d7pKp0zi+LDXGxNl9u6qHy2qb0dB8swVJNJfO80rpSIKw2zr1RvIhXwyPyLIGjddwiCnbHN6upcp7J3OMTHRfbDpbUD5iepRi7wt4qt0x1/QyTKukV2g5M4Ui1XBA1PBkaZUf/wxRQxVxFNK10WB8oX/jwNZv5s/twMPogbUc0klcUKpTJQ4eNk0jmiSz2G1EdB6oK/pYb97Nq2iv5mWcRlPSuIAvXjWgAgMY6LarW0KqPgcYE838NTB/tUCSQVyOlovTJdYfZhNQc8WoXTt0+9dSEYzAER8sPTXjv/3VxW/4= X-Forefront-PRVS: 02638D901B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39450400003)(39860400002)(39840400002)(39410400002)(39850400002)(39400400002)(38730400002)(1076002)(6916009)(42186005)(2950100002)(110136004)(8676002)(25786009)(6666003)(2906002)(6116002)(3846002)(50226002)(81166006)(4326008)(33646002)(2351001)(189998001)(6512007)(47776003)(5660300001)(53936002)(66066001)(305945005)(6506006)(6486002)(48376002)(575784001)(86362001)(5003940100001)(50986999)(76176999)(36756003)(50466002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR07MB1726; H:elxcz23q12-y4.ca.am.ericsson.se; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR07MB1726; 23:6YVy4m0tWvk4FS99IwGoYGaZB5DhthzYkKoIadL0P?= =?us-ascii?Q?Qwiuoue5qgt5Ab/JpgwfstYxxn2FTeodi5K+4G0T/l/dtB1F5w2YGiOt1/nr?= =?us-ascii?Q?Q6FQY12A84N0ZvKXrFiG+5GTjRhJ5zTUNxmOLFS2TkDLylPhIRNeP8LzokuY?= =?us-ascii?Q?8T4Rzp7qxO9ZbSv1/YdPRSgmcVP1AwrAk6LFp5WIFWYypnvYDftU+onn0AJw?= =?us-ascii?Q?ix3G8lpcmhKB6tttozEEMwmOjnIcBJiGGNqRt3bxidw9r7M5mvV5cY7OLKwu?= =?us-ascii?Q?COiHbVkh9cIaYOe0vwuNv0Th14UW2zM7eoeoH1mzFBwPNSPic5gYIU1maSba?= =?us-ascii?Q?caPnoQhlXoldnLRHl2wVHG9dQE7vKfEE/4wCjmngaPLVNYWdIe5b/08zfHd0?= =?us-ascii?Q?hZL6LtyXMb+PKqadb/FjduTk6M+sqF9HL/vGYDqLu2IwevlWOcSZJl0o1ev+?= =?us-ascii?Q?YMHBQpq2U/ypcVsj2gD5FxcjUfTEQIL5qW2uJQ9SsRIasNaWsZBEKH67yN5D?= =?us-ascii?Q?koFJMFWFKwHIS0H+BHOg+MAyOp/WOt25dnI0FSaf4qpkBV7374e1KK6X0NN6?= =?us-ascii?Q?+rC+bW0NkEWuEUuvzgtQqI5hWc2II3WfvPxr79KKj+SRZg6Raudut3MkedSz?= =?us-ascii?Q?DeRxSSHVq2wNChx4BkC957SJ1KLfwbXaOPL0VmAHtiRyoztqJv/Wj1nGYe8k?= =?us-ascii?Q?myJ+oCAIHd69b85kbGf2A4WXmhH9sc4h/xSYx21yfoKkMsy95Fc5vHovPah9?= =?us-ascii?Q?KkFzX659gY4mMl7ltM9sDKMOcYRNRXmd0SU6OO7j3xSpUPuixgFhSdHCBRqp?= =?us-ascii?Q?hwHLjTifZHuLLy2JKL5SETJmxgfG6kw0fk1DNLev3GTCisBWIpha5KtQq6in?= =?us-ascii?Q?sdugAw2aNmd+SqnH4lUwJwCP7SG3VBBs1fHRp+dyEvdShZ/U4S50/DEaeTi1?= =?us-ascii?Q?MBgXNTRglCmQ6by77daP+jPrW/cxFGGWS72oWUoMS+3R4pklVE3KvV41eenr?= =?us-ascii?Q?kDkoEAsRKpH0lvGU3Cyrlr4IBNcYTGOa0KAB8gsV/mOjrcS8TJgLrjHCv7vb?= =?us-ascii?Q?w1dA7AehgvO2t7lkqbT/2EvYJXv?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1726; 6:VNOah48tt/2ky/BCTFTywfzwnNEY1e2SQeDh47HpMJUF9cKx2cNv5phZnzbVpg8578rvt1YTCzeGlJEhQhmi0MFoKj/89g/RwNXjW2ZN3W2LfSOQyPYRcX/WJeMsbkPsBkZAoI8GLn8JqHpJjbgMo+RRAm7522OG3L5lAL+Ox30c6CDhdlN4YTlMfBZrPPgMAyyHAUyhuXTkPM0mr5wC88JBLxmGgDrYy3RE1W87/qXFx9YjMXuTQdXDpXQ5q5O+pSzUJD69AjVx8xEBFNARuXRts3d7BQ7HLlhOhyIBKrNcruzWfqFYCLEIrY45WLqm80EcR9EEw1WMJcbNUxUgSl25CRlK67aNvdWzDoT1AXI6w0RMvsZL36iP5eV/kf2tN9or7urTxbhMvtKvW83TCQ==; 5:HOyxKnDQxk9D8iEZvmPNL+CIOhncvSUGUzrKKngKmOllUcCDx5mnQNckRkIyV7RAXV8ZpIdcDI/KYF1Stv4vEsoTNep4s8amemHXTZmma1Ouum2muFSd3gkuni8w/aMxAsjUMemjljyC5pnBRUU+/A==; 24:qgfnmm2qp9dMTkT+hzLd+0lmqvrdQIxmsmKDPStyjKJlRLsKlBhlMR1DvznQaKu7EUHjEBj7uqrVX3z4fVKtLhe/qXpozp4JYexIcTwGr98= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB1726; 7:Nwf2wnY7Paww+xwRqmkJC3XoW8qiws+VzPnLo9XE8j8lCUaoVJlDKM34+YPhq7EVrAqwGd2bP51OxEFAzI5dleEImufTic6dTzTM5YrS+OhNTI2l1u4MyU/wdCysvOrQ+rLWN7rh0Yc1b5oI4lNRVNXA6g1rkp+V5U5O7Z/SrXKfhtlThqMIDfQUS8fSUwFKgyi0cVI2blx6Hf/g3teBqcePjMjWaNFpN4rX6WUXZ6yXlZhOwfafvPSCE+6c+AOqUYRvoNOBQOC4RW2vQVS0vHdh+j1Zuyh4MWsAUfpCd3RI4H363I28bQX1z1exF3WYUwxm+sLufYVfZ6iAaaN9FA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Mar 2017 14:56:09.0902 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB1726 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes From: Simon Marchi I noticed that there were some missing files in gdbserver's gitignore (some generated register format .c files). Of course the easy fix would be to add those files to .gitignore, but I think we can do a better job, so that we don't have to worry about adding generated files to .gitignore or the clean Makefile target. I suggest naming all generated source files -generated.c. This way, we can use a single rule in .gitignore and do a "rm -f *-generated.c" to clean them up. New in v2: - Don't rename version.o and xml-builtin.o gdb/gdbserver/ChangeLog: * .gitignore: Remove generated files, replace with wildcard. * (clean): Replace removal of generated files with wildcard. (version.c): Replace with... (version-generated.c): ...this. (xml-builtin.c): Replace with... (xml-builtin-generated.c): ...this. (%-ipa.o: %-generated.c, %.o: %-generated.c): New rules. (%.c: *regformats*): Replace with... (%-generated.c: *regformats*): ...this. --- gdb/gdbserver/.gitignore | 18 +------------ gdb/gdbserver/Makefile.in | 68 ++++++++++++++--------------------------------- 2 files changed, 21 insertions(+), 65 deletions(-) diff --git a/gdb/gdbserver/.gitignore b/gdb/gdbserver/.gitignore index 66ce8439e5..fef0d01b14 100644 --- a/gdb/gdbserver/.gitignore +++ b/gdb/gdbserver/.gitignore @@ -7,20 +7,4 @@ libinproctrace.so build-gnulib-gdbserver build-libiberty-gdbserver -amd64-avx-linux.c -amd64-avx-mpx-linux.c -amd64-avx512-linux.c -amd64-linux.c -amd64-mpx-linux.c -i386-avx-linux.c -i386-avx-mpx-linux.c -i386-avx512-linux.c -i386-linux.c -i386-mmx-linux.c -i386-mpx-linux.c -reg-*.c -version.c -x32-avx-linux.c -x32-avx512-linux.c -x32-linux.c -xml-builtin.c +*-generated.c diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in index 9935012eb8..6af7c402f8 100644 --- a/gdb/gdbserver/Makefile.in +++ b/gdb/gdbserver/Makefile.in @@ -413,47 +413,10 @@ tags: TAGS clean: rm -f *.o ${ADD_FILES} *~ - rm -f version.c rm -f gdbserver$(EXEEXT) gdbreplay$(EXEEXT) core make.log rm -f $(IPA_LIB) - rm -f aarch64.c - rm -f reg-arm.c reg-bfin.c i386.c reg-ia64.c reg-m32r.c reg-m68k.c - rm -f reg-sh.c reg-sparc.c reg-spu.c amd64.c i386-linux.c - rm -f reg-cris.c reg-crisv32.c amd64-linux.c reg-xtensa.c - rm -f reg-tilegx.c reg-tilegx32.c - rm -f arm-with-iwmmxt.c - rm -f arm-with-vfpv2.c arm-with-vfpv3.c arm-with-neon.c - rm -f mips-linux.c mips-dsp-linux.c - rm -f mips64-linux.c mips64-dsp-linux.c - rm -f nios2-linux.c - rm -f powerpc-32.c powerpc-32l.c powerpc-64l.c powerpc-e500l.c - rm -f powerpc-altivec32l.c powerpc-cell32l.c powerpc-vsx32l.c - rm -f powerpc-altivec64l.c powerpc-cell64l.c powerpc-vsx64l.c - rm -f powerpc-isa205-32l.c powerpc-isa205-64l.c - rm -f powerpc-isa205-altivec32l.c powerpc-isa205-vsx32l.c powerpc-isa205-altivec64l.c - rm -f powerpc-isa205-vsx64l.c - rm -f s390-linux32.c s390-linux64.c s390x-linux64.c - rm -f s390-linux32v1.c s390-linux32v2.c s390-linux64v1.c - rm -f s390-linux64v2.c s390x-linux64v1.c s390x-linux64v2.c - rm -f s390-te-linux64.c s390x-te-linux64.c - rm -f s390-vx-linux64.c s390x-vx-linux64.c - rm -f s390-tevx-linux64.c s390x-tevx-linux64.c - rm -f tic6x-c64xp-linux.c tic6x-c64x-linux.c tic6x-c62x-linux.c - rm -f xml-builtin.c stamp-xml - rm -f i386-avx.c i386-avx-linux.c - rm -f i386-mpx.c i386-mpx-linux.c - rm -f i386-avx-mpx.c i386-avx-mpx-linux.c - rm -f i386-avx-avx512.c i386-avx-avx512-linux.c - rm -f i386-avx-mpx-avx512-pku.c i386-avx-mpx-avx512-pku-linux.c - rm -f amd64-avx.c amd64-avx-linux.c - rm -f amd64-mpx.c amd64-mpx-linux.c - rm -f amd64-avx-mpx.c amd64-avx-mpx-linux.c - rm -f amd64-avx-avx512.c amd64-avx-avx512-linux.c - rm -f amd64-avx-mpx-avx512-pku.c amd64-avx-mpx-avx512-pku-linux.c - rm -f i386-mmx.c i386-mmx-linux.c - rm -f x32.c x32-linux.c - rm -f x32-avx.c x32-avx-linux.c - rm -f x32-avx-avx512.c x32-avx-avx512-linux.c + rm -f *-generated.c + rm -f stamp-xml @$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do maintainer-clean realclean distclean: clean @@ -504,15 +467,15 @@ am--refresh: force: -version.c: Makefile $(srcdir)/../version.in $(srcdir)/../../bfd/version.h $(srcdir)/../common/create-version.sh +version-generated.c: Makefile $(srcdir)/../version.in $(srcdir)/../../bfd/version.h $(srcdir)/../common/create-version.sh $(SHELL) $(srcdir)/../common/create-version.sh $(srcdir)/.. \ - $(host_alias) $(target_alias) version.c + $(host_alias) $(target_alias) $@ -xml-builtin.c: stamp-xml; @true +xml-builtin-generated.c: stamp-xml; @true stamp-xml: $(XML_DIR)/feature_to_c.sh Makefile $(XML_FILES) rm -f xml-builtin.tmp $(SHELL) $(XML_DIR)/feature_to_c.sh xml-builtin.tmp $(XML_FILES) - $(SHELL) $(srcdir)/../../move-if-change xml-builtin.tmp xml-builtin.c + $(SHELL) $(srcdir)/../../move-if-change xml-builtin.tmp xml-builtin-generated.c echo stamp > stamp-xml .PRECIOUS: xml-builtin.c @@ -552,6 +515,10 @@ ax.o: ax.c # Rules for objects that go in the in-process agent. +%-ipa.o: %-generated.c + $(IPAGENT_COMPILE) $< + $(POSTCOMPILE) + %-ipa.o: %.c $(IPAGENT_COMPILE) $< $(POSTCOMPILE) @@ -573,6 +540,10 @@ ax.o: ax.c # Rules for objects that go in the gdbserver binary. +%.o: %-generated.c + $(COMPILE) $< + $(POSTCOMPILE) + %.o: %.c $(COMPILE) $< $(POSTCOMPILE) @@ -593,18 +564,19 @@ ax.o: ax.c $(COMPILE) $< $(POSTCOMPILE) -# Rules for register format descriptions. +# Rules for register format descriptions. Suffix destination files with +# -generated to identify and clean them easily. -%.c: ../regformats/%.dat | $(regdat_sh) +%-generated.c: ../regformats/%.dat | $(regdat_sh) $(SHELL) $(regdat_sh) $< $@ -%.c: ../regformats/arm/%.dat | $(regdat_sh) +%-generated.c: ../regformats/arm/%.dat | $(regdat_sh) $(SHELL) $(regdat_sh) $< $@ -%.c: ../regformats/i386/%.dat | $(regdat_sh) +%-generated.c: ../regformats/i386/%.dat | $(regdat_sh) $(SHELL) $(regdat_sh) $< $@ -%.c: ../regformats/rs6000/%.dat | $(regdat_sh) +%-generated.c: ../regformats/rs6000/%.dat | $(regdat_sh) $(SHELL) $(regdat_sh) $< $@ #