[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: