Re: Shell Script Input/Output tables
Re: Shell Script Input/Output tables
- Subject: Re: Shell Script Input/Output tables
- From: Willard Myers <email@hidden>
- Date: Sat, 1 Nov 2003 09:27:27 -0500
I have the same challenge as Mike; my Qt project has many 'forms' and
'mocables' that need to be preprocessed. The preprocessors (uic and
moc) generate C++ files which then need to become part of the target's
source files list.
If I correctly understand the popup help in the Shell Script Build
Phase editor, it will run the script (preprocessing *all* files)
whenever any input file has a newer time stamp than the newest output
file. This is expensive for my project.
The ability to add new Rules (Get Info on a Target) is very cool and
almost works for the forms, which are identified by a unique file name
extension. This would provide per-file dependency checking. Almost,
because the Rules editor seems to be rather fragile.
But the Rules approach doesn't work for mocables, which are identified
as .h files that contain a certain macro. I haven't found a way to
devise a rule which looks inside files to determine if the rule applies
to the file.
My solution, for now, has been to build a Python script which does all
the preprocessing (with time stamp testing), and call that script in a
Shell Script Target. My primary project target depends on the shell
script target, so that the latter is always run first in a build. The
script has lists of the files that need preprocessing. I have to
manually add the derived files to the project, but this is a one-time
step (until the list of files changes), accomplished by dragging in a
folder containing all of the derived files.
The Qt qmake tool has the ability to build Project Builder projects
that have similar preprocessing scripts. I haven't tried using it with
Xcode.
Bill
On Oct 30, 2003, at 10:44, Mike wrote:
Thanks for the tip. What you suggested works just as you said!
Mike
On Oct 29, 2003, at 11:44 PM, Scott Tooker wrote:
The bad news is the Shell Script Build Phase inspector is fairly
broken
in Xcode 1.0. The good news is that it is fixed in the next release.
With the current version you might be able to enter project-relative
paths in the given table by clicking in the table, hitting return and
then clicking in the new row to add the item.
Scott
On Oct 29, 2003, at 8:30 PM, Mike wrote:
Hello,
I've been using Mac OS X quite a bit lately (esp. Xcode this week)
for
a good deal of Qt development, and I use the Shell Script build phase
for running Qt's moc preprocessor to create new source files based on
some macros in certain C++ header files. Anyway, as it stands now I
have the "mocable" sources being rebuilt every-time I build my
library, and it takes time for this, which is why the Input/Output
tables of the shell script phase inspector look so promising, if I
could figure out how to add files to those lists. Has anyone had any
luck with this yet? Any advice would be much appreciated. Thanks in
advance.
Mike Beam
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.
[demime 0.98b removed an attachment of type
application/pkcs7-signature which had a name of smime.p7s]
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.
________________________________________________________________________
________
Stellar Science Ltd. Co. Stellar Scientific Software
Solutions
email@hidden www.stellarscience.com
1-603-569-0266
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.