View Single Post
Old 11-11-2011, 10:38 AM   #12
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,860
Karma: 6120478
Join Date: Nov 2009
Device: many
Hi,

Many even large-scale projects build just fine on Mac OS X with only minor changes to what is done on Linux. I have built everything on Mac OS X including the original OpenOffice.org project which had a huge cpp codebase with its own completely unique build system. I have never used or needed fink / Mac OS X Ports, etc since they are just pure overhead for someone who can actually build from source properly and install their own libraries in /usr/local using the standard config, make, make install most projects use.

Packaging on Mac OS X is actually easier than on almost any other platform because it actually encompasses the program, icons, libraries, frameworks, etc needed into one .app which is actually just a glorified folder/directory with its own internal structure. No need to install libraries in special locations, update dylib environment variables, or worry too much about dependencies (since they can be packaged right inside the .app directory).

Packaging for Mac OS X can be easy - see Sigil's build tree for an example.

So again, in the next source archive, please include whatever scripts, hacks, makefiles, or even just a list of required steps, versions and dependencies as a text file currently used to complete the build from pure source into the package for Mac OS X. Regular Mac OS X developers can then help to simplify and enhance those scripts and make the build and packaging even easier.

That is the power of open source.

KevinH

Quote:
Originally Posted by ldolse View Post
I agree with you conceptually, but on the flip side Calibre's approach in this case actually encourages development and contribution more than any other open source projects I've worked on. The fact that you don't need to build a bunch of dependencies makes Calibre incredibly easy to contribute too.

I don't think it's a matter of secrecy that building the package from scratch is difficult, though Kovid may be better able to comment on that - I think it's just more about convenience and priorities.

I think it may also be partly Apple's fault - most open source projects completely fail at building easy to use Apple installer packages even when there are Windows and Linux binaries, and I think it's at least somewhat common that the source tree doesn't provide the capability to build a DMG package, but I may be wrong.

BTW, last time I built Calibre from source was on Linux - and that was very easy - the other issue with Mac is you often need a homebrew/Macports/fink recipe for each dependency in order to get a successful build - that can be incredibly tedious to put all those pieces together.
KevinH is offline   Reply With Quote