[CMake] Build several libraries with different compilation flags
pellegrini
pellegrini at ill.fr
Fri Oct 1 11:44:12 EDT 2010
Hi Marcel,
Yes, you are right but as I said to Ryan my problem is that I do not
want to change the compiler flags for the whole library (in that case
the set_target_properties would be the appropriated way to do) but only
for a few files of my library.
What I want to do seems tricky (or perhaps non sense ?). What about the
following approach ?
I will create two separate projects that I will call in my main
CMakeLists.txt on the following way:
project(my_whole_project Fortran)
include(my_first_project)
include(my_second_project)
...
In doing so, each project does not see the other one (I hope) and I
should be able to do whatever I want with one without disturbing
the other. What do you think ?.
Eric
Marcel Loose a écrit :
> Hi Eric,
>
> I'm not sure your solution is going to work. Once your file1, file2, ...
> are compiled for building my_lib1, there's reason for CMake to compile
> them again for my_lib2, because the object files are already up-to-date.
> I guess you'll have a better chance using target_properties, as Ryan
> suggested.
>
> HTH,
> Marcel Loose.
>
> On Fri, 2010-10-01 at 17:10 +0200, pellegrini wrote:
>
>> Hi Ryan,
>>
>> Yes, that might be the solution if I wanted to change the compiler flags
>> for the whole library but in my case, that is not on the whole
>> library that I want to apply a new set of compiler flags but only on a
>> small number of files.
>>
>> Ryan Pavlik a écrit :
>>
>>> Look at the target properties instead of the source file properties.
>>>
>>> Ryan
>>>
>>> On 10/01/2010 08:27 AM, pellegrini wrote:
>>>
>>>> Hello everybody,
>>>>
>>>> I would like to build two libraries that contain the same files but
>>>> with a slightly different set of compilation flags
>>>> from one library to another. This within the same makefile. I was
>>>> thinking about an approach such as:
>>>>
>>>> add_library(my_lib1, STATIC, src_files ...)
>>>> set_source_files_properties(file1, file2 ... PROPERTIES COMPILE_FLAGS
>>>> ...)
>>>> add_library(my_lib2, STATIC, src_files ...)
>>>> set_source_files_properties(file1, file2 ... PROPERTIES COMPILE_FLAGS
>>>> ...)
>>>>
>>>> does cmake sensitive to the order of these instruction ?
>>>>
>>>> thank you very much
>>>>
>>>> Eric
>>>>
>>>>
>>>>
>>
>
>
>
--
Eric Pellegrini
Calcul Scientifique
Insitut Laue-Langevin
Grenoble, France
More information about the CMake
mailing list