Thx a lot that works.

I have source1, source2, source2/source3

so I did mylib_SUBPROJECTS = source1 source2 source2/source3

The result is mylib-0.dll and libmylib.dll.a

Do you know have to have libmylib.dll instead of mylib-0.dll ?

(I read in the manual that I have to prefix by "lib" but I think I did it:
LIBRARY_NAME = libmylib)


2009/2/24 Nicola Pero <[email protected]>

> You want to use subprojects :-)
>
> Your top level GNUmakefile should look like
>
>
>
> include $(GNUSTEP_MAKEFILES)/common.make
>
> LIBRARY_NAME = mylib
> mylib_SUBPROJECTS = source1 source2
>
> include $(GNUSTEP_MAKEFILES)/library.make
>
>
> This will compile a single library, at top level, by linking together the
> subprojects source1 and
> source2.
>
>
> Then, in source1 you need a GNUmakefile such as the following one:
>
>
>
> include $(GNUSTEP_MAKEFILES)/common.make
>
> SUBPROJECT_NAME = source1
> source1_C_FILES = file11.c file12.c
>
> include $(GNUSTEP_MAKEFILES)/subproject.make
>
>
> This will compile the files and link them into a subproject, which is then
> used by the top-level GNUmakefile.
> In source2, you may want to add a similar GNUmakefiles.
>
> Hope this helps! :-)
>
> Let me know if you need more help
>
> Thanks
>
>
> On 24 Feb 2009, at 19:57, Julien Isorce wrote:
>
>  Hi,
>>
>> I have a project where there is severals source directories: source1,
>> source2, source3
>> I want to compile the project to make only one shared library.
>> I have tried to use the following:
>>
>>
>> in the top directory:
>> ------------------------------------------------------------------------
>> include $(GNUSTEP_MAKEFILES)/common.make
>> SUBPROJECTS = source1 source2
>> include $(GNUSTEP_MAKEFILES)/aggregate.make
>> ------------------------------------------------------------------------
>>
>>
>> in source1 dir:
>> ------------------------------------------------------------------------
>> include $(GNUSTEP_MAKEFILES)/common.make
>>
>> LIBRARY_NAME = libmylib
>>
>> libmylib_C_FILES = file11.c file12.c
>>
>> include $(GNUSTEP_MAKEFILES)/library.make
>> ------------------------------------------------------------------------
>>
>> and in source2:
>> ------------------------------------------------------------------------
>> include $(GNUSTEP_MAKEFILES)/common.make
>>
>> LIBRARY_NAME = libmylib
>>
>> libmylib_C_FILES += file21.c file22.c
>>
>> include $(GNUSTEP_MAKEFILES)/library.make
>> ------------------------------------------------------------------------
>>
>>
>> but it does not work.
>>
>> Any solution ?
>>
>> Thx
>>
>> Sincerely
>>
>> Julien
>>
>> _______________________________________________
>> Bug-gnustep mailing list
>> [email protected]
>> http://lists.gnu.org/mailman/listinfo/bug-gnustep
>>
>
>
_______________________________________________
Bug-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to