On 2011-07-14 00:29, Nick Sabalausky wrote:
"Jacob Carlborg"<d...@me.com>  wrote in message
news:ivkpdp$8dj$1...@digitalmars.com...

FWIW, my Drake system takes that as a high priority, too. For example, if
you have project "foo", then you can get the cross-platform binary
filename,
object filename, shared lib filename, static lib filename, etc like this:

"foo".exe  // "foo.exe" or "foo"
"foo".obj  // "foo.obj" or "foo.o"
"foo".lib  // "foo.lib" or "foo.a"
"foo".slib  // "foo.dll" or "foo.so"
"foo".bat  // "foo.bat" or "foo"
"foo".sh   // "foo.bat" or "foo.sh"

Don't forget "foo.dylib" on Mac OS X.


Thanks, I didn't know about that. Does OSX use .dylib instead of .so, or is
it another thing that it has in addition to .so?

Yes it uses .dylib instead of .so. It also has frameworks and other bundles which probably is a little overkill for the tool to support. A framework is just a folder name <name>.framework that contains a specific file and directory layout. It contains a dylib, header files, resources like images and sounds and possibly other dynamic libraries. Basically a package with everything the library needs to run.

BTW, DMD can build dynamic libraries on Mac OS X using the "-dylib" switch.

Are there any other OSX-specific (or BSD-specific, for that matter)
extensions to be aware of? Until now, I thought it just used all the same
extensions as Linux.

It depends on what the build tool should be able to do and know about. For example, GUI applications on Mac OS X is expected to be in an application bundle (<name>.app), similar to a framework but containing an executable instead of a dynamic library.

Oh also, to Posix-people: Could "slib" be easily confused as being to "lib"
what "sbin" is to "bin"?

--
/Jacob Carlborg

Reply via email to