🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.delphi.commandlinetools
Article #292

Re: using dcc32 on a .pas file does not checktimestamp?

#292
From: Brandon Smith
Date: Thu, 24 Feb 2005 05:16
38 lines
2910 bytes
You are right, the /M switch will not compile a .pas file if it finds the 
corresponding .dcu file in the same directory and the .dcu file has a 
later datetimestamp.  I never use the /M switch since DCC32 is so 
blazingly fast, not sure what benefits would be gained by using it.

My normal practice is the create a dir called <delphi>/dcu and designate 
that as the place for my dcu both in the IDE and when using DCC32.  When 
it is time to do a build, I erase everything in that dir so I can be sure 
the build reflects the current source code and not some stray .dcu that 
might be there to throw me off.  I spent nearly two days tracking down a 
bug once that turned out to be an old dcu that nonetheless had a more 
recent date than the .pas file because the .pas file was recovered from a 
stash of old code that I wanted/needed to go back to.

As for using packages, I use them a lot, though I often do builds on a 
machine that has none of them installed.  DCC32 doesn't care about 
packages, only source code or dcu, though you can use it to build from 
.dpk.

Again, I strongly recommend never using the /M switch with DCC32 unless 
you are absolutely sure you know what is in every .dcu it might find.

In the IDE, on the other hand, I almost always use the equivalent of the 
/M swithc, CTL-F9.  As for packages in the IDE, I generally set up a 
seperate project (.dpr) that is the "host" for the develoment of the 
package.  Then I set up a seperate project manager that contains all my 
packages in the order they need to be installed.  Whenever I make a major 
change (or a change to one early in the chain), I have to use the right 
click, build, then right click and install.  AT least this is what I 
needed for D5 and D6.  The other methods seemed to fail more often than 
not.

Also, when using packages, make sure your default .dof file does not 
contain them.

Sorry for being long winded,

Brandon
Technical Details
Message-ID: <Xns9606ED8DD9142Brandonsynaturecom@207.105.83.66>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!mpls-transit-01.news.qwest.net!news-out.newsgroups.com!propagator2-sterling.newsfeeds.com!news-in.nuthinbutnews.com!news-in.newsfeeds.com!in.nntp.be!caladan.landsraad.net!newsgroups.borland.com!not-for-mail
References: <421504db$1@newsgroups.borland.com> <42150959@newsgroups.borland.com> <421513cc@newsgroups.borland.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: ff8f1,639350cc3ab9f1b3
X-Google-Attributes: gidff8f1,public
X-Google-Language: ENGLISH,ASCII-7-bit
Newsgroups: borland.public.delphi.commandlinetools
Subject: Re: using dcc32 on a .pas file does not checktimestamp?
From: Brandon Smith <redwoodtwig@yahoo.com>
References: <421504db$1@newsgroups.borland.com> <42150959@newsgroups.borland.com> <421513cc@newsgroups.borland.com>
Organization: synature
Message-ID: <Xns9606ED8DD9142Brandonsynaturecom@207.105.83.66>
User-Agent: Xnews/5.04.25
NNTP-Posting-Host: 207.43.186.124
Date: 23 Feb 2005 21:16:40 -0800
X-Trace: newsgroups.borland.com 1109222200 207.43.186.124 (23 Feb 2005 21:16:40 -0800)
Lines: 39
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!mpls-transit-01.news.qwest.net!news-out.newsgroups.com!propagator2-sterling.newsfeeds.com!news-in.nuthinbutnews.com!news-in.newsfeeds.com!in.nntp.be!caladan.landsraad.net!newsgroups.borland.com!not-for-mail