[CMake] [cmake-developers] CPack: GetPrerequisites: cross-compiling from Linux to Windows
Dominik Schmidt
domme at tomahawk-player.org
Tue Mar 6 11:03:04 EST 2012
Hi
On Tue, Mar 6, 2012 at 4:28 PM, Eric Noulard <eric.noulard at gmail.com> wrote:
> This is the interesting part.
> This installation part is launched by CPack before packaging.
> So I misunderstood, one of your previous answer
>>> In order to be sure that nothing else is breaking you can try to
>>> [manually] add the missing definition in the CPackConfig.cmake file.
>>> This file is loaded by CPack at CPack-time so that any definitions in there
>>> will be seen during CPack run.
>
>> Went fine.
>
> I have not the rime now to dive into CPack source code in order to check
> which context comes with the installation step launched by CPack.
>
> Does the [cross-]DeployQt4 works if you simply do
>
> make install
>
> ?
No.
message(FATAL_ERROR "CPACK_SYSTEM_NAME is : ${CPACK_SYSTEM_NAME}
CMAKE_SYSTEM_NAME: ${CMAKE_SYSTEM_NAME} CMAKE_CROSSCOMPILING:
${CMAKE_CROSSCOMPILING} ")
CMake Error at /home/domme/dev/installs/share/cmake-2.8/Modules/GetPrerequisites.cmake:626
(message):
CPACK_SYSTEM_NAME is : CMAKE_SYSTEM_NAME: CMAKE_CROSSCOMPILING:
Call Stack (most recent call first):
/home/domme/dev/installs/share/cmake-2.8/Modules/BundleUtilities.cmake:432
(get_prerequisites)
/home/domme/dev/installs/share/cmake-2.8/Modules/BundleUtilities.cmake:612
(get_bundle_keys)
/home/domme/dev/sources/zokyo_client/cmake/modules/DeployQt4.cmake:116
(fixup_bundle)
cmake_install.cmake:43 (FIXUP_QT4_BUNDLE)
It's the same for cpack --verbose or make install.
> Just an FYI from the original author of GetPrerequisites here:
> cross-packaging was not even considered as we developed it. If it
> works at all, it's by happy accident.
The only unsolved problem so far is, I can't set any variable at
cpack-install time. So I cant even manually enforce gp_tool = objdump.
Would I need to write it to cmake_install.cmake somehow?
> I always envisioned packaging as occurring on a "host == target" platform.
NSIS does a pretty good "cross-job" :)
> If we want to support cross-packaging for real in CMake/CPack, then we
> need some dashboard submissions that build such a beast, and submit
> nightly... so that we can monitor for errors when we do make changes
> to the source tree.
To me it looks like it only needs a pretty minor change at least on
GetPrerequisites side.
> Thanks, and best of luck here,
> David C.
Thanks,
Dominik
More information about the CMake
mailing list