2017-07-27 2 views
2

私はCPackの使い方を理解しようとしています。私は、バイナリとソースパッケージを生成したい。バイナリの1つは、必要なものだけを含めて、完璧です。ソースディストリビューションでは、基本的にのすべてのファイルがプロジェクトのルートディレクトリにあります。私のCPakeコマンドを実行した場所のCMakeビルドディレクトリも含めて、です。CPack:gitによって追跡されるファイルのみパック

ビルドディレクトリが複数ある可能性があるため、ソースパッケージにすべてのビルドディレクトリを除外することはできません。

set(CPACK_SOURCE_IGNORE_FILES "*.git*")は問題なく機能しますが、理想的には、含まれているファイルのセットを、バージョンコントロールによって追跡されるものに限定したいと思います。 git、最初は。そして、いいえ、私は私のプロジェクトディレクトリが完全にであることを確かめることを検討していません。

(アーカイブにディレクトリ全体を梱包する私がCPackを必要としないものです。)

答えて

2

私の知る限りでは、あなただけの巨大無視するファイルのリストを作ることによってCPackソースパッケージファイルを設定することができます。あなた自身の.gitignoreファイルや他のソースからインスピレーションを得ることができます。たとえば:

list(APPEND CPACK_SOURCE_IGNORE_FILES "/\.git/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/CMakeFiles/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/_CPack_Packages/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/bin(ary)?/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/build/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/dist/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/libs?/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/logs?/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/objs?/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/[tT]e?mp/") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/___pycache__") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/\.cache") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/\.gitignore.*") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "/CMakeCache.txt") 
list(APPEND CPACK_SOURCE_IGNORE_FILES "\.pyc$") 

など

+0

えっ、それは非常に残念です。しかし、答えをありがとう! – mattmilten

関連する問題