LINUX.ORG.RU

Как так портаге работает с cmake?

 , ,


0

1

Если собирать vacuum-9999 и оборвать начало сборки, чтобы увидеть как портаге будет собирать пакет, то можно увидеть, что именно он скармливает cmake:

cmake --no-warn-unused-cli -C /var/tmp/portage/net-im/vacuum-9999/work/vacuum-9999_build/gentoo_common_config.cmake -G Unix Makefiles -DCMAKE_INSTALL_PREFIX=/usr -DINSTALL_LIB_DIR=lib64 -DINSTALL_SDK=ON -DLANGS=none; -DINSTALL_DOCS=OFF -DFORCE_BUNDLED_MINIZIP=OFF -DPLUGIN_statistics=OFF -DPLUGIN_adiummessagestyle=OFF -DPLUGIN_annotations=ON -DPLUGIN_autostatus=ON -DPLUGIN_avatars=ON -DPLUGIN_birthdayreminder=ON -DPLUGIN_bitsofbinary=ON -DPLUGIN_bookmarks=ON -DPLUGIN_captchaforms=ON -DPLUGIN_chatstates=ON -DPLUGIN_clientinfo=ON -DPLUGIN_commands=ON -DPLUGIN_compress=ON -DPLUGIN_console=ON -DPLUGIN_dataforms=ON -DPLUGIN_datastreamsmanager=ON -DPLUGIN_emoticons=ON -DPLUGIN_filemessagearchive=ON -DPLUGIN_filestreamsmanager=ON -DPLUGIN_filetransfer=ON -DPLUGIN_gateways=ON -DPLUGIN_inbandstreams=ON -DPLUGIN_iqauth=ON -DPLUGIN_jabbersearch=ON -DPLUGIN_messagearchiver=ON -DPLUGIN_messagecarbons=ON -DPLUGIN_multiuserchat=ON -DPLUGIN_pepmanager=ON -DPLUGIN_privacylists=ON -DPLUGIN_privatestorage=ON -DPLUGIN_recentcontacts=ON -DPLUGIN_registration=ON -DPLUGIN_remotecontrol=ON -DPLUGIN_rosteritemexchange=ON -DPLUGIN_rostersearch=ON -DPLUGIN_servermessagearchive=ON -DPLUGIN_servicediscovery=ON -DPLUGIN_sessionnegotiation=ON -DPLUGIN_shortcutmanager=ON -DPLUGIN_socksstreams=ON -DPLUGIN_urlprocessor=ON -DPLUGIN_vcard=ON -DPLUGIN_xmppuriqueries=ON -DPLUGIN_spellchecker=ON -DSPELLCHECKER_BACKEND=enchant -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE=/var/tmp/portage/net-im/vacuum-9999/work/vacuum-9999_build/gentoo_rules.cmake -DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/net-im/vacuum-9999/work/vacuum-9999_build/gentoo_toolchain.cmake  /var/tmp/portage/net-im/vacuum-9999/work/vacuum-9999

Есть одна проблема, если мы захотим использовать эту строку сами, а именно:

-DLANGS=none; -DINSTALL_DOCS=OFF
точка с запятой после none разделяет команду на две.

Как так портаж работает с cmake?



Последнее исправление: slon (всего исправлений: 2)

Не «точка с запятой разделяет», a sh. Портеж же напрямую спавнит команды.

В шелле экранируй спецсимволы: -DLANGS=none\; -DINSTALL_DOCS=OFF

anonymous
()
Ответ на: комментарий от anonymous

Ясно, спасибо, я думал его и мой ввод ничем не отличается, буду знать теперь.

slon
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.