Re: CVS breaks Makefile (pattern contains no "%" ??)
On Wed, Jul 11, 2001 at 09:58:42PM -0700, der.hans wrote:
> > i've done a diff on the two resulting "Makefile"s and there's
> > lots, lots, lots. under RCS, all went well, under CVS, "make" is
> > broken somehow.
>
> Are there actual changes or is it white space ( which cvs shouldn't mangle
> )? diff -b will ignore white space changes. Changing tabs to a bunch of
> spaces will massively hose Makefiles.
it wasn't the whitespace--
> BTW, do the diffs on Makefile.PL. Makefile shouldn't go in cvs.
the generated Makefile isn't in cvs:
there's no diff on the Makefile.PL (after all, "cvs import / cvs
checkout" should be a verbatim copy, except for keyword
string substitutions)...
there actually wasn't much diff on the generated Makefile -- i
was thinking about the diff i did on the output of "make -p"
which was immense.
> http://linux.fh-heilbronn.de/doku/GNU/docs/make/make_96.html#IDX791
>
> The top of that explains the %.
that's for rules like
%.pm ; do_something_here
so i'd be able to
make something-at-random.pm
and that rule would take over. but i was just doing "make" which
should run a default rule...
--
but the problem was (and still is) the $VERSION variable --
Makefile.PL contained
'VERSION_FROM' => 'MyModule.pm', # finds $VERSION
and MyModule.pm now contains:
# get just the version NUMBER
$VERSION = ('$Revision: 1.3 $' =~ /(\d+\.\d+)/)[0];
# it was $Id$ which caused nine kinds of hell
# i've got it down to ONE kind of hell, now
--
but when i do
perl Makefile.PL
the makefile still gets
VERSION = undef
...
@$(PERL) -e "print qq{<SOFTPKG NAME=\"MyModule\" VERSION=\"undef,0,0,0\">\n}. qq{\t<TITLE>MyModule</TITLE>\n}. qq{\t<ABSTRACT></ABSTRACT>\n}. qq{\t<AUTHOR></AUTHOR>\n}. qq{\t<IMPLEMENTATION>\n}. qq{\t\t<OS NAME=\"$(OSNAME)\" />\n}. qq{\t\t<ARCHITECTURE NAME=\"i386-linux\" />\n}. qq{\t\t<CODEBASE HREF=\"\" />\n}. qq{\t</IMPLEMENTATION>\n}. qq{</SOFTPKG>\n}" > MyModule.ppd
i think this is still trouble:
qq{<SOFTPKG NAME=\"MyModule\" VERSION=\"undef,0,0,0\">\n}
particularly,
VERSION=\"undef,0,0,0\"
any ideas? can i make that dovetail with the numeric value in
$Id$ somehow?
--
DEBIAN NEWBIE TIP #56 from Vineet Kumar <debian-user@virtual.doorstop.net>
:
Troubled by DOS-FORMAT OR MAC-FORMAT TEXT FILES? Here's another
way to deal with those troublesome ^M characters: a simple
tr -d '\015' < dos.file > reg.file
should do the trick. While we're on the subject, a Mac file
can be converted with
tr '\015' '\012' < mac.file > reg.file
You can do all your CR/LF translations with tr as long as you
can remember that macs use CRs, *nices use LFs, and DOS uses
CR+LF.
Also see http://newbieDoc.sourceForge.net/ ...
Reply to: