Add devel script which refreshes charmonizer.c. Add devel/bin/regen_charmonizer.pl, which regenerates all "charmonizer.c" meld files in the entire Lucy repository and allows us to omit a step in all our host-specific build scripts.
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/5f33d1a9 Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/5f33d1a9 Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/5f33d1a9 Branch: refs/heads/chaz_namespacing Commit: 5f33d1a91a9eab2adab452d49290b4c5fdff6b20 Parents: dd69f40 Author: Marvin Humphrey <[email protected]> Authored: Thu Oct 11 16:24:20 2012 -0700 Committer: Marvin Humphrey <[email protected]> Committed: Thu Nov 1 15:24:15 2012 -0700 ---------------------------------------------------------------------- devel/bin/regen_charmonizer.pl | 44 +++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucy/blob/5f33d1a9/devel/bin/regen_charmonizer.pl ---------------------------------------------------------------------- diff --git a/devel/bin/regen_charmonizer.pl b/devel/bin/regen_charmonizer.pl new file mode 100755 index 0000000..66296bc --- /dev/null +++ b/devel/bin/regen_charmonizer.pl @@ -0,0 +1,44 @@ +#!/usr/bin/perl + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +use strict; +use warnings; + +use FindBin qw( $Bin ); +use File::Spec::Functions qw( catdir catfile updir ); + +# Execute from the root of the Lucy repository. +chdir catdir( $Bin, updir(), updir() ); + +my $CHAZ_DIR = 'charmonizer'; +my $MELD_EXE = catfile( $CHAZ_DIR, 'buildbin', 'meld.pl' ); +my $LUCY_CHAZ_MAIN = catfile( $CHAZ_DIR, 'charmonize.c' ); + +# Clownfish runtime. +{ + my $out = catfile(qw( clownfish runtime common charmonizer.c )); + unlink $out; + system( $MELD_EXE, '--probes=', "--files=$LUCY_CHAZ_MAIN", "--out=$out" ); +} + +# Lucy core. +{ + my $out = catfile(qw( common charmonizer.c )); + unlink $out; + system( $MELD_EXE, '--probes=', "--files=$LUCY_CHAZ_MAIN", "--out=$out" ); +} +
