異なるプラットフォームに対応するQMAKE_COPYコマンド

異なるプラットフォームに対応するQMAKE_COPYコマンド

ソースhttps://stackoverflow.com/questions/20324061/where-are-variables-such-as-mkdir-and-copy-dir-defined

 

.proファイルが処理され、qmakeによってMakefileが生成される前に、コンパイラとプラットフォームに基づいて他のいくつかのファイルが前処理されます。これらのファイルには拡張子.prfおよび.confがあり、mkspecsと呼ばれるディレクトリからロードされます。

Makefile内のMKDIRおよびCOPY_DIR変数の値は、次のファイルで定義されているQMAKE_MKDIRおよびQMAKE_COPY_DIR変数の値によって生成されます。

C:\ Qt \ Qt5.0.2 \ 5.0.2 \ msvc2010 \ mkspecs \ common \ shell-unix.conf:

QMAKE_TAR              = tar -cf
QMAKE_GZIP             = gzip -9f

QMAKE_COPY             = cp -f
QMAKE_COPY_FILE        = $$QMAKE_COPY
QMAKE_COPY_DIR         = $$QMAKE_COPY -R
QMAKE_MOVE             = mv -f
QMAKE_DEL_FILE         = rm -f
QMAKE_DEL_DIR          = rmdir
QMAKE_CHK_EXISTS       = test -e %1 ||
QMAKE_CHK_DIR_EXISTS   = test -d    # legacy
QMAKE_MKDIR            = mkdir -p   # legacy
QMAKE_MKDIR_CMD        = test -d %1 || mkdir -p %1
QMAKE_STREAM_EDITOR    = sed

C:\ Qt \ Qt5.0.2 \ 5.0.2 \ msvc2010 \ mkspecs \ common \ shell-win32.conf:

QMAKE_ZIP              = zip -r -9

QMAKE_COPY             = copy /y
QMAKE_COPY_DIR         = xcopy /s /q /y /i
QMAKE_MOVE             = move
QMAKE_DEL_FILE         = del
QMAKE_DEL_DIR          = rmdir
QMAKE_CHK_EXISTS       = if not exist %1
QMAKE_CHK_DIR_EXISTS   = if not exist   # legacy
QMAKE_MKDIR            = mkdir          # legacy
QMAKE_MKDIR_CMD        = if not exist %1 mkdir %1 & if not exist %1 exit 1

# xcopy copies the contained files if source is a directory. Deal with it.
CONFIG += copy_dir_files

(ご覧のとおり、私はQt 5.0.2を使用しているため、マシン上のパスが異なる場合があります。)

 

=============終了

 

おすすめ

転載: www.cnblogs.com/lsgxeva/p/12749592.html