Dear CodeWarrior users, In this weekend, I was trying to improve a project file for CodeWarrior IDE builds/mac/ftlib.prj.xml to support 3 architechtures: CFM MSL, Mach-O MSL, Mach-O BSD. And, I found that CW project file (both of traditional binary and XML formats) could not store the pathnames of source files. When I copy the project file to vanilla source tree of FreeType2, CW starts to scan the source tree and determine which source files should be compiled.
This is the root of the problem reported by RJJ (2 years ago, sorry): Why CW tries to compile builds/amiga/src/base/ftsystem.c instead of src/base/ftsystem.c? When a CW project file tells CW to load a source file named "ftsystem.c", it cannot specify the directory including the file. The CW crawls all directories (maybe in the alphabetical order) and loads the first file named "ftsystem". Therefore, builds/amiga/src/base/ftsystem.c is prioritized than src/base/ftsystem.c. I could not find any switches to prevent or restrict this scanning behaviour. It means - when the developers trying to build FreeType2 by CW, they must remove unused files from the source directories before importing the project file. Maybe the expected building process for project file would be "open a project file and start the building", but it is almost impossible for FreeType2. Maybe the stable (and easy-to-maintain) solution would be using Metrowerks C compilers and linkers out of CW IDE: legacy CW provides MPW plugins to invoke some developer tools via MPW Shell, later CW provides the compilers and linker for Unix shell. However, the command line option of CW C compiler is incompatible with most compilers on Unix (e.g. -Dxxx, -Ixxx and -Lxxx are unavailable. -d xxx, -i xxx, and -l xxx should be used), so CW-specific Makefile or Jamfile is required. I suppose the requirement to support CW for MacOS is now decreasing, so later efforts would be less meaningful. But I want to prioritze the working for Carbon-free FOND parser. If anybody who has CodeWarrior 7 (the first version supporting Mach-O binary) and interested in the maintenance of CW project file, please let me know. I will write some ad-hoc Makefile to simplify the source tree to work with the annoying behaviour of CW. Maybe this is too off-topic issue in this list. If anybody has a comment, please post to freetype-devel list. I have another proposal to work with legacy CW, I will post it to freetype-devel. Regards, mpsuzuki On Wed, 13 Dec 2006 14:50:00 +0900 [EMAIL PROTECTED] wrote: >Hi, > >Thank you for rewriting your trouble report (to fit my poor >English). > >On Tue, 12 Dec 2006 13:30:54 EST >[EMAIL PROTECTED] wrote: > >>If cw7.0 there is no place to put any pre-processor definitions >>so I put these in a file I called ftwcoptions.h. I then had to >>include this as a prefix file. > >Oh, I slipped to consider the possibility that older >CW has no interface. I guess the user can freely choose >the name of "ftcwoptions.h" or anything else (e.g. >ftcwoptions.h, ft2cw7options.h, etc etc). Am I right? > >>I added src/base/ftsystem.c put CW kept picking up >>builds/amiga/src/base/ftsystem.c. I don't know how or why. > >I see. >If you rename "builds/amiga" folder to "builds/zamiga", >does CW pick up "builds/unix/ftsystem.c"? _______________________________________________ Freetype mailing list Freetype@nongnu.org http://lists.nongnu.org/mailman/listinfo/freetype