On 16 September 2010 20:01, David Gowers <[email protected]> wrote:
> This is going a little slower than I thought.
Should have figured; the Makefile took me a whole evening :)
> I've got bam2mid building (easy);
>
> Just now, I've made it collect all the common object files
> into a library ('libohrcommon.a')
>
> scons: done reading SConscript files.
> scons: Building targets ...
> scons: `all' is up to date.
> fbc -lang deprecated -c gfx_sdl.bas -mt -g -exx
> fbc -lang deprecated -c gfx_fb.bas -mt -g -exx
> fbc -lang deprecated -c allmodex.bas -mt -g -exx
> fbc -lang deprecated -c backends.bas -mt -g -exx
> fbc -lang deprecated -c lumpfile.bas -mt -g -exx
> fbc -lang deprecated -c compat.bas -mt -g -exx
> fbc -lang deprecated -c bam2mid.bas -mt -g -exx
> fbc -lang deprecated -c common.bas -mt -g -exx
> fbc -lang deprecated -c browse.bas -mt -g -exx
> fbc -lang deprecated -c util.bas -mt -g -exx
> fbc -lang deprecated -c loading.bas -mt -g -exx
> fbc -lang deprecated -c reload.bas -mt -g -exx
> fbc -lang deprecated -c reloadext.bas -mt -g -exx
> fbc -lang deprecated -c slices.bas -mt -g -exx
> ar rc libohrcommon.a blit.o base64.o gfx_sdl.o gfx_fb.o gfx_sdl.o
> allmodex.o backends.o lumpfile.o compat.o bam2mid.o common.o browse.o
> util.o loading.o reload.o reloadext.o slices.o
> ranlib libohrcommon.a
Read the Makefile very careful: files needs to be compiled with either
-d IS_GAME or -d IS_CUSTOM, although of all the common modules, only
$(semicommon_sources) actually depend on these defines and need
rebuilding.
> .. currently, dependencies are working well -- dependencies are
> automagically detected from the source files, and modifying the
> respective .bi dependencies or main .bas file triggers a rebuild.
Great! Having to rebuild everything because I tweaked a comment is not
nice. However in practice most of our modules depend on most of our
header files... everything is just too disorganised.
> One thing that I found slightly misleading was that, in some
> circumstances, SCons will rebuild .o files but not relink the library!
> This happens when the .o files are all identical to the last build
> (for example, it happens if you simply add a comment somewhere in the
> file.. the compiled result is the same.)
>
> This is a bit smarter than I'm used to :) (It occurs because SCons
> compares MD5 hashes to determine whether there is actually anything
> new created, or just a duplicate of the old result.)
> _______________________________________________
> Ohrrpgce mailing list
> [email protected]
> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>
_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org