From f99742cfbe20126dee0ee28c66bd867beaa73000 Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Sat, 10 Mar 2012 22:44:33 -0800 Subject: [PATCH] Use shell script to conditionally update SVM file. --- src/Makefile.in | 5 +++-- src/etc/maybe-update-file.sh | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100755 src/etc/maybe-update-file.sh diff --git a/src/Makefile.in b/src/Makefile.in index 115573aa1..4d16d1ed1 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -90,8 +90,9 @@ all-svm: microcode/svm1-defns.h $(MAKE) build-bands #build-ffis microcode/svm1-defns.h: compiler/machines/svm/svm1-defns.h - if ! cmp compiler/machines/svm/svm1-defns.h microcode/svm1-defns.h; \ - then cp compiler/machines/svm/svm1-defns.h microcode/svm1-defns.h; fi + @$(top_srcdir)/etc/maybe-update-file.sh \ + compiler/machines/svm/svm1-defns.h \ + microcode/svm1-defns.h compiler/machines/svm/svm1-defns.h: \ compiler/machines/svm/assembler-rules.scm \ diff --git a/src/etc/maybe-update-file.sh b/src/etc/maybe-update-file.sh new file mode 100755 index 000000000..19cda90ef --- /dev/null +++ b/src/etc/maybe-update-file.sh @@ -0,0 +1,35 @@ +#!/bin/sh +# +# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, +# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Massachusetts Institute +# of Technology +# +# This file is part of MIT/GNU Scheme. +# +# MIT/GNU Scheme is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# MIT/GNU Scheme is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with MIT/GNU Scheme; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA +# 02110-1301, USA. + +set -e + +. etc/functions.sh + +FROM=${1} +TO=${2} +if ! cmp "${FROM}" "${TO}" > /dev/null 2>&1 +then + rm "${TO}" + cp "${FROM}" "${TO}" +fi -- 2.25.1