[x265] MSYS2/MinGW - ccache hook probably not well supported

Mario *LigH* Rohkrämer contact at ligh.de
Tue Sep 17 13:17:15 CEST 2019


The media-autobuild suite recently added experimental support for ccache 
(provided by MSYS2 as mingw-w64-x86[_64]-ccache 3.7.2-1).

The configuration step for x265 seems to fail requesting its feature set 
correctly, I even doubt it is aware of its presence at all, and its 
hooking into compiler calls might have unwanted side effects.

An example from the configuration in an MSYS2-64/MinGW32 compilation:

+----
-- cmake version 3.15.2
CMake Deprecation Warning at CMakeLists.txt:10 (cmake_policy):
   The OLD behavior for policy CMP0025 will be removed from a future version
   of CMake.

   The cmake-policies(7) manual explains that the OLD behaviors of all
   policies are deprecated and that a policy should be set to OLD only under
   specific short-term circumstances.  Projects should be ported to the NEW
   behavior and not rely on setting a policy to OLD.


CMake Deprecation Warning at CMakeLists.txt:16 (cmake_policy):
   The OLD behavior for policy CMP0054 will be removed from a future version
   of CMake.

   The cmake-policies(7) manual explains that the OLD behaviors of all
   policies are deprecated and that a policy should be set to OLD only under
   specific short-term circumstances.  Projects should be ported to the NEW
   behavior and not rely on setting a policy to OLD.


-- The C compiler identification is GNU 9.2.0
-- The CXX compiler identification is GNU 9.2.0
-- Check for working C compiler: E:/MABS/msys64/mingw32/bin/ccache.exe
-- Check for working C compiler: E:/MABS/msys64/mingw32/bin/ccache.exe 
-- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: E:/MABS/msys64/mingw32/bin/ccache.exe
-- Check for working CXX compiler: E:/MABS/msys64/mingw32/bin/ccache.exe 
-- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for include file inttypes.h
-- Looking for include file inttypes.h - found
-- Performing Test CC_HAS_NO_STRICT_OVERFLOW
-- Performing Test CC_HAS_NO_STRICT_OVERFLOW - Success
-- Performing Test CC_HAS_NO_NARROWING
-- Performing Test CC_HAS_NO_NARROWING - Success
-- Performing Test CC_HAS_NO_ARRAY_BOUNDS
-- Performing Test CC_HAS_NO_ARRAY_BOUNDS - Success
-- Performing Test CC_HAS_FAST_MATH
-- Performing Test CC_HAS_FAST_MATH - Success
-- Performing Test CC_HAS_STACK_REALIGN
-- Performing Test CC_HAS_STACK_REALIGN - Success
-- Performing Test CC_HAS_FNO_EXCEPTIONS_FLAG
-- Performing Test CC_HAS_FNO_EXCEPTIONS_FLAG - Success
E:/MABS/msys64/mingw32/bin/ccache.exe: unknown option -- d
Usage:
     ccache [options]
     ccache compiler [compiler options]
     compiler [compiler options]          (via symbolic link)

Common options:
     -c, --cleanup             delete old files and recalculate size 
counters
                               (normally not needed as this is done
                               automatically)
     -C, --clear               clear the cache completely (except 
configuration)
     -F, --max-files=N         set maximum number of files in cache to N 
(use 0
                               for no limit)
     -M, --max-size=SIZE       set maximum size of cache to SIZE (use 0 
for no
                               limit); available suffixes: k, M, G, T 
(decimal)
                               and Ki, Mi, Gi, Ti (binary); default 
suffix: G
     -p, --show-config         show current configuration options in
                               human-readable format
     -s, --show-stats          show summary of configuration and statistics
                               counters in human-readable format
     -z, --zero-stats          zero statistics counters

     -h, --help                print this help text
     -V, --version             print version and copyright information

Options for scripting or debugging:
         --dump-manifest=PATH  dump manifest file at PATH in text format
     -k, --get-config=K        print the value of configuration key K
         --hash-file=PATH      print the hash (<MD4>-<size>) of the file 
at PATH
         --print-stats         print statistics counter IDs and 
corresponding
                               values in machine-parsable format
     -o, --set-config=K=V      set configuration item K to value V

See also <https://ccache.dev>.
-- Found nasm: E:/MABS/msys64/mingw32/bin/nasm.exe (found version "2.14.02")
-- Found Nasm 2.14.02 to build assembly primitives
E:/MABS/msys64/mingw32/bin/ccache.exe: unknown option -- d
Usage:
     ccache [options]
     ccache compiler [compiler options]
     compiler [compiler options]          (via symbolic link)

Common options:
     -c, --cleanup             delete old files and recalculate size 
counters
                               (normally not needed as this is done
                               automatically)
     -C, --clear               clear the cache completely (except 
configuration)
     -F, --max-files=N         set maximum number of files in cache to N 
(use 0
                               for no limit)
     -M, --max-size=SIZE       set maximum size of cache to SIZE (use 0 
for no
                               limit); available suffixes: k, M, G, T 
(decimal)
                               and Ki, Mi, Gi, Ti (binary); default 
suffix: G
     -p, --show-config         show current configuration options in
                               human-readable format
     -s, --show-stats          show summary of configuration and statistics
                               counters in human-readable format
     -z, --zero-stats          zero statistics counters

     -h, --help                print this help text
     -V, --version             print version and copyright information

Options for scripting or debugging:
         --dump-manifest=PATH  dump manifest file at PATH in text format
     -k, --get-config=K        print the value of configuration key K
         --hash-file=PATH      print the hash (<MD4>-<size>) of the file 
at PATH
         --print-stats         print statistics counter IDs and 
corresponding
                               values in machine-parsable format
     -o, --set-config=K=V      set configuration item K to value V

See also <https://ccache.dev>.
-- hg found at E:/MABS/msys64/usr/bin/hg.bat
-- x265 version 3.1+20-f5d756344566
-- Looking for strtok_r
-- Looking for strtok_r - found
-- Configuring done
-- Generating done
...
+----

-- 

Fun and success!

Mario *LigH* Rohkrämer
maito:contact at ligh.de


More information about the x265-devel mailing list