% git describe
GitLive-blead-160-g5f58995
% make
[...]
./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
./miniperl -Ilib configpm
written lib/Config.pod
updated lib/Config.pm
updated lib/Config_heavy.pl
Can't modify constant item in scalar assignment at lib/Config_git.pl line 12, near "ENDOFGIT ;"
(Might be a runaway multi-line << string starting on line 5)
Compilation failed in require at lib/Config_heavy.pl line 1194.
Compilation failed in require at configpm line 997.
% cat -n lib/Config_git.pl
1 #################################################################
2 # WARNING: lib/Config_git.pl is generated by make_patchnum.sh #
3 # DO NOT EDIT DIRECTLY - edit make_patchnum.sh instead #
4 #################################################################
5 ::Git_Data=<<'ENDOFGIT';
6 git_commit_id='5f589954180c59496f647c8523dcd3df0d8e579b'
7 git_describe='GitLive-blead-160-g5f58995'
8 git_branch='blead'
9 git_uncommitted_changes='true'
10 git_commit_id_title='Derived from:'
11 git_commit_date='2008-12-30 23:30:24 -0800'
12 ENDOFGIT
Shell scripting is *so* hard. If it must be shell, then the following
seems to do it:
diff --git a/make_patchnum.sh b/make_patchnum.sh
index 1eb309d..706f78b 100644
--- a/make_patchnum.sh
+++ b/make_patchnum.sh
@@ -58,7 +58,7 @@ new_unpushed=`cat <<EOFTEXT
/*leave-this-comment*/
EOFTEXT
`
-new_config=`cat <<EOFDATA
+new_config="
#################################################################
# WARNING: lib/Config_git.pl is generated by make_patchnum.sh #
# DO NOT EDIT DIRECTLY - edit make_patchnum.sh instead #
@@ -72,7 +72,7 @@ git_commit_id_title='$commit_title'
$extra_info
ENDOFGIT
EOFDATA
-`
+"
# only update the files if necessary, other build product depends on these files
if [ "$existing_patchnum" != "$new_patchnum" ] || [ "$new_config" != "$existing_config" ] || [ "$existing_unpushed" != "$new_unpushed" ]; then
echo "Updating .patchnum and lib/Config_git.pl"
--
andreas
Thread Next