I am fairly new to automake/autoconf/etc. so perhaps this question is newbie:
I have searched many docs to no avail...
What is the preferred source directory layout for projects using
automake+autoconf+libtool
when maintaining multiple platform-specific implementations of the same interfaces?
Specifically, my problem is thus:
I have a single library which can compile under posix, win32, and, say, cygwin-posix.
Certain parts of the library are fairly x-platform, letting me just write unified
cpp/h files with judicious use of #ifdefs.
However, other parts of the library are quite divergent, and attempting to maintain
a single unified file would just mean having one huge and unwieldy #ifdef, splitting
the file in two or three parts.
The current layout is something like this:
/common
bar.cpp
bar.h
foo.h
/posix
foo.cpp
/win32
foo.cpp
/cygwin
foo.cpp
Under msvc you can just make a single project and take all of the sources from
/common and /win32. Using plain Makefiles you can do something like
mylib.la : bar.cpp $(archsrc)/foo.cpp
Automake does not seem capable of handling these bizarre layouts. How is this
done in practice? I often see a "bits" or "i486-gnu-..." which are per-platform.
Is this what I want? Or do you need to use libtool convenience libraries (I'd
like to avoid that -- I don't think it would be portable to win32)?
Thanks
-Kevin
______________________________________________________
Get Your FREE FlashMail Address now at http://www.flashmail.com
It's Free, Easy, & Fun !!!