Up-to-date FreeOrion Mac-SDK and build - Test please!

For topics that do not fit in another sub-forum.

Moderator: Oberlus

Message
Author
User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#121 Post by Vezzra »

night wrote:...Thank you for the great amount of effort you put into restructuring the project.
You're welcome :D I think it's an effort well spent because now I just can hit CMD-B to build the project. Before I had to manually compile EffectsParser.cpp, then the parser cpp's, then the rest of the project each time one or more parts of the parser had to be recompiled (due to whatever changes). Doing that several times over took more time then the restructuring of the project to get rid of this annoying problem ;)
The new organization might have lots of targets but uses less RAM during the compilation. Having the smaller targets does not impact the building speed on my system at all and the new release configuration creates a smaller way faster binary (1,49 GB to 468 MB). Great job! :D
Thanks! I'm glad this turned out so well :D
...As you're getting better results with LLVM GCC 4.2 I suggest we make that the default compiler for our build configurations.
Excellent idea. I absolutely agree.

All your other modifications to the project make sense too, to me at least, they seem to be sound.
The 'old' approach was having a .svn folder inside the archive of the SDK. The user had to run 'svn update' to get the latest sources as well as the remaining content. I'm afraid that this solution could cause some problems in the future. Old .svn folders from another system as a foundation for a fresh development environment do not seem to be the best idea.

The new SDK is cleaner and easier to set up than the old one. You just download the archive, unzip it and run the bootstrap.command file. The script then downloads the latest sources from SVN and adds the contests of the SDK to it. In the end the user has a clean, new copy of the subversion repo on his/her system.

The new approach is just a suggestion of mine, we can still stick to the other way if I have overlooked some major flaw :D
I think that's also an excellent idea. I don't know if old .svn folders are likely to cause problems if they are too far outdated, but IMO your new solution is the safer way to do things anyway. I've already tested this new SDK, first on my main development machine (in a test folder), then on another Mac where I hadn't anything FO related installed, both test went smoothly, so all your modifications seem to work well. I'd say we stick with the new approach.

One remark concerning version.cpp: I suggest to keep the version string format consistent across platforms. On windows it's "v0.3.17+ [SVN 4549] MSCV 2010". I'd follow this pattern, so instead of "post-v0.3.17" stick with "v0.3.17+", omit the "GitMirror" part (as that relates to your specific setup), omit the "r" in front of the SVN revision number and use "Xcode3" as reference for the build environment: "v0.3.17+ [SVN 4549] Xcode3". Only if you want to provide a build that has additional patches applied (that haven't been committed to SVN) I'd suggest to append some kind of suffix to the SVN revision number to indicate that this isn't a build based solely on SVN (like "+p" or something like that).

That was nice teamwork! 8)

night
Space Kraken
Posts: 102
Joined: Sun Jun 12, 2011 1:21 pm

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#122 Post by night »

I updated the app to SVN 4549 and changed the version string. You can get it here. Have fun!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#123 Post by Geoff the Medio »

night wrote:I updated the app to SVN 4549...
I uploaded 4570 yesterday... It would probably be more useful to provide the latest SVN, unless there's a major bug or it won't build.

night
Space Kraken
Posts: 102
Joined: Sun Jun 12, 2011 1:21 pm

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#124 Post by night »

Oh sorry I got the numbers wrong. Actually it is 4574. I rebuilt the project and replaced the file.

night
Space Kraken
Posts: 102
Joined: Sun Jun 12, 2011 1:21 pm

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#125 Post by night »

I updated the app to SVN r4585. You can get it here. Have fun!

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#126 Post by Vezzra »

Hello night,
night wrote:...For my attempt to make a new SDK I modified the project a bit:

- Removed the libboost_date_time.a from the project (does to seem to be needed)
- Set LLVM GCC 4.2 as the default compiler for all configurations except the Release_LLVM target where it is Apple LLVM compiler 3.0
...
I just noticed something I obviously missed before: Apparently you set the compiler in the build settings not only in the global project build settings, but also in the individual build settings of every build target. I noticed that when I copied the "Release" build configuration to a "Test" build configuration and changed the compiler to "GCC 4.2" in the global build settings. I was tinkering with something that didn't compile, and I wanted to rule out the possibility of some incompatibility with the llvm compiler. When I still got the compiler errors I noticed that the compiler used was llvm-gcc, checked the individual build settings of the build targets and discovered that the compiler was set at this level for each build target (and thus overriding the global setting).

That isn't necessary, as this setting is the same for all the build targets, so you can set it just on the global project level and the build settings on the individual build target level will inherit the global setting. In fact, doing it this way is far easier to maintain. If you set the compiler for each build target, it get's a real pain if you want to switch the compiler setting, especially with 30+ build targets as we have now due to the new project structure.

You can either remove the compiler setting from the individual build settings of each build target yourself, or use the modified Xcode project attached to this post, where I've done that already.

Did you set any of the other build settings in the individual build target settings of every build target? You've modified some other build settings, so you maybe set them in the individual build target settings of every build target like you did with the compiler setting. Unless there is a setting that should only apply to a subset of the build targets, they should be removed also.

At least I think it would be better this way. Unless there is a reason I missed why you did this, and we should keep the settings on the individual build target level...
Attachments
FreeOrion.xcodeproj.zip
(223.28 KiB) Downloaded 150 times

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#127 Post by Geoff the Medio »

Could one of you make an OSX build of SVN 4593? I'm planning to call that revision the first candidate for v0.4, and it'd be nice to have packages for OSX available as well as the Windows installer already on sourceforge.

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#128 Post by Vezzra »

Geoff the Medio wrote:Could one of you make an OSX build of SVN 4593? I'm planning to call that revision the first candidate for v0.4, and it'd be nice to have packages for OSX available as well as the Windows installer already on sourceforge.
Done. Zipped the app bundle and uploaded it to my dropbox. Upload is slow as usual, so it's still in progress. This will take ~2 hours I think, then you should be able to download the file. EDIT: Upload is finished, file can be downloaded!

DOWNLOAD LINK EDIT: Download no longer available

I set the version string to: "v0.4-RC1 [SVN 4593] Xcode 3". If this should be something different, let me know and I'll correct it.
Last edited by Vezzra on Sun Jan 22, 2012 8:08 pm, edited 2 times in total.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#129 Post by Geoff the Medio »

That version string is fine, but could you pack it in a tar.gz instead of a .zip ? I'd like to be consistent with previous releases and I'm not sure what the .zip vs .tar.gz support situation is on stock Macs...

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#130 Post by Vezzra »

Geoff the Medio wrote:That version string is fine, but could you pack it in a tar.gz instead of a .zip ? I'd like to be consistent with previous releases and I'm not sure what the .zip vs .tar.gz support situation is on stock Macs...
I tried that (because of the slightly better compression), but for some strange reason I get errors. If your main concern is if zip archives are sufficiently supported on stock Macs, that's no problem - in fact, zip is the default compressor on OS X, at least on 10.6+ (can't tell about 10.5 an earlier, never had one of those, but that's irrelevant anyway, as the FO build requires 10.6+). So, Macs with 10.6+ handle zip just fine.

Therefore I didn't bother trying to troubleshoot the issues with tar/gzip, and just went ahead with zip.

The upload has finished a few minutes ago, so you can go ahead and download the package. Unless you still want a .tar.gz archive to be constistent with previous releases, in this case tell me, and I'll try to get it done.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#131 Post by Geoff the Medio »

Vezzra wrote:Unless you still want a .tar.gz archive to be constistent with previous releases, in this case tell me, and I'll try to get it done.
It probably doesn't matter.

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#132 Post by Vezzra »

Ok, I gave it a try anyway, successfully :mrgreen:

Uploaded FO app bundle for OS X 10.6 as .tar.gz to my dropbox, upload in progress but way faster atm. At this rate it might be finished in less then 30 min. Well, we'll see... ;) EDIT: Upload finished, file ready for download!

DOWNLOAD LINK. EDIT#2: Download no longer available.
Last edited by Vezzra on Mon Mar 26, 2012 1:04 pm, edited 1 time in total.

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#133 Post by Vezzra »

New FO build for SVN 4601 available.

Download here. EDIT: Download no longer available.
Last edited by Vezzra on Sun Feb 05, 2012 5:54 pm, edited 1 time in total.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#134 Post by Geoff the Medio »

Vezzra wrote:I set the version string to: "v0.4-RC1 [SVN 4593] Xcode 3". If this should be something different, let me know and I'll correct it.
In future, just call it "v0.4 [SVN 46##] XCode 3", (replacing ## as appropriate) so that if there are no issues, I can just rename the file to make a v0.4 release; I don't want to have to download a new file just to get rid of the -RC# in the application title...

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Up-to-date FreeOrion Mac-SDK and build - Test please!

#135 Post by Vezzra »

Geoff the Medio wrote:In future, just call it "v0.4 [SVN 46##] XCode 3", (replacing ## as appropriate) so that if there are no issues, I can just rename the file to make a v0.4 release; I don't want to have to download a new file just to get rid of the -RC# in the application title...
All right :)

Post Reply