On Dec 7, 2007, at 9:01 AM, Stephen Bartnikowski wrote:

Curt,

Having a working XCode 2.5 project would be huge! Hugely helpful! In so many
ways.

So yeah, a snapshot of your project or a diff of the cpptasks hacks you did
would be an enormous help.

Thanks,
Stephen



I'm in the process of rewriting SMTPAppender to use libesmtp (and possibly libgmime, but maybe not) and that will require rebuilding your projects when that is committed. I'm also running into all sorts of problems with Leopard that I did not recall seeing with Tiger. Here is my best recollection of how to build XCode projects on Tiger.

1. Build cpptasks from SVN HEAD. I anticipate further refinements of XCode project generation, but have no uncommitted changes and the last changes were in August.

2. Run Ant to build log4cxx

ant -Dcompiler=g++

If this doesn't succeed, still continue to next step. Fails on apr on Leopard.

3. Use Ant to build XCode projects

ant -Dcompiler=g++ -Dprojects.dir=xcode build-projects-xcode

3. Open ./xcode/apr.xcodeproj in XCode 2.5. I've seen loading the generated project make XCode non-responsive for a minute or so, but they always seem to come around. Compile the project, if you get errors about APR_HAVE_SENDFILE, change ./src/apr/apr-1.2.9/include/ apr.h so that APR_HAVE_SENDFILE is 0 and compile again.

4. Open ./xcode/aprutil.xcodeproj in XCode 2.5 and build.

The include paths will likely have to be fixed, I believe that "../src/ apr/apr-1.2.9/include", "../src/apr-util/apr-util-1.2.8/include", "../ src/apr-util/apr-util-1.2.8/xml/expat/lib", "../src/apr-util/apr- util-1.2.8/xml/expat", "../src/apr-util/apr-util-1.2.8/include/ private" are sufficient.

apr-util's configure is failing for me on Leopard.

5. Open ./xcode/cppunit.xcodeproj and build.

6.Open ./xcode/log4cxx.xcodeproj.

Rename product to liblog4cxx.dylib.

Add apr.xcodeproj and apr-util.xcodeproj to project. Open Info on Target and on the general page, add apr and apr-util as dependencies.

If you fail due to include files, add the following entries to the include path "../src/apr/apr-1.2.9/include", "../src/apr-util/apr- util-1.2.8/include" and "../src/main/include".

If you fail due to unsatisified references, add the following to "Other Linker Flags" on the linking options for the target, "-laprutil -liconv -lapr".

7. Projects linking against log4cxx.dylib

Add log4cxx.xcode project to project, add as a dependency to the target, add "-llog4cxx" to the Other linker flags, add "../src/main/ include" to include path.

I've uploaded a snapshot of Xcode project files to http://people.apache.org/~carnold/xcode.tar.gz . To use, expand in your log4cxx base directory which will result in a xcode subdirectory containing several projects. Manually renaming the product in log4cxx.xcodeproj is still required (it doesn't seem to stick when I packaged things up). The configure steps for apr, apr- util, cppunit and log4cxx all need to be either manually run or run through the Ant script before the projects will work. Only the current target has been tested, so Debug builds might work, but not Release.

Obviously want to work out the kinks during the release building process, so the XCode projects just work without all the manual intervention.

Reply via email to