[CMake] A small philosophical problem
Carminati Federico
Federico.Carminati at cern.ch
Fri Jul 18 10:19:55 EDT 2008
Philip, Bill,
ok, this is what I did. Adding libarry was already wrapped for me,
so it was a two-line change. Thanks,
Federico Carminati
CERN-PH
1211 Geneva 23
Switzerland
Tel: +41 22 76 74959
Fax: +41 22 76 79480
Mobile: +41 76 487 4843
On 18 Jul 2008, at 15:49, Philip Lowman wrote:
> On Fri, Jul 18, 2008 at 9:37 AM, Carminati Federico <Federico.Carminati at cern.ch
> > wrote:
> Hello,
> I want to be able to build optionally static libs for my project.
> I have no problem to add custom targets and dependencies, this all
> works nicely. However I want to be able to install them if needed.
> So I define an installation rule and I label it as optional, as
> these files may or may not exist. cmake complains with the following
> message
>
> WARNING: Target "TTherminator_a" has EXCLUDE_FROM_ALL set and will
> not be built by default but an install rule has been provided for
> it. CMake does not define behavior for this case.
>
> I believe that this warning is justified if I do not lable the
> component as OPTIONAL, however if it is labelled as optional, the
> behaviour IS welll defined. The component is not there and it will
> not be installed. So I believe that in case of optional install
> targets the warning should not be there. BEst,
>
> Is this not good enough for your needs? We do something very
> similar at work although we wrap all of the calls to ADD_LIBRARY and
> INSTALL with macros.
>
> ADD_LIBRARY(foo-shared SHARED foo.cc)
> IF(BUILD_STATIC)
> ADD_LIBRARY(foo-static STATIC foo.cc)
> ENDIF()
>
> INSTALL(TARGETS foo-shared
> ARCHIVE DESTINATION lib
> LIBRARY DESTINATION lib
> RUNTIME DESTINATION bin)
> IF(BUILD_STATIC)
> INSTALL(TARGETS foo-static
> ARCHIVE DESTINATION lib
> LIBRARY DESTINATION lib
> RUNTIME DESTINATION bin)
> ENDIF()
>
>
> --
> Philip Lowman
More information about the CMake
mailing list