Code Monkey home page Code Monkey logo

shaka-player-embedded's People

Contributors

joeyparrish avatar kareljuricka avatar nextsux avatar nitro404 avatar shaka-bot avatar themodmaker avatar theodab avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shaka-player-embedded's Issues

Fix xlink support

The way we handle xlink in the javascript player involves modifying DOM. That works in a real browser environment, but in the simplified browser environment embedded provides the DOM is immutable.
So either we need to change the DOM interface to be mutable, or change Shaka Player to handle xlink without modifying the DOM.

Generate IDL externs from JavaScript

The Player externs are currently written statically in the repo. It would be nice if we could generate them from the Shaka Player repo instead. Unfortunately the externs are defined as @typedefs, so we would need to parse the jsdoc comments to be able to generate them.

Unlisted dependency on openssl

I think there is an implicit dependency on openssl. I didn't have it on my box. Probably worth adding to the installation docs.

Otherwise this fails:

File "/Users/cgenzmer/Desktop/google-shaka/shaka-player-embedded/third_party/curl/config/mac/find_curl_ca_bundle.py", line 32, in
print(find_ca())
File "/Users/cgenzmer/Desktop/google-shaka/shaka-player-embedded/third_party/curl/config/mac/find_curl_ca_bundle.py", line 28, in find_ca
raise Exception('Unable to locate SSL CA cert')
Exception: Unable to locate SSL CA cert

Add trick play controls to demo app

There should be an option to replace the normal scrubber we provide with a special trick interface with trick play buttons. The option to switch to this should probably be in the configuration menu.

Import issues from our private tracker

There are many known issues and incomplete features that have been tracked in our private tracker since before our public release. These need to be cleaned up and imported into github.

Better handling for OOM errors

Right now, if we run out of memory, the app crashes. We have some measures in place; for example, the sample app sets configuration values down when it receives a memory warning. Those measures aren't enough to really save us, though, and we tend to end up crashing.
At the very least, we should automatically shut down the player object and display an error. That wouldn't be great, but it'd be better than the app crashing.

dyld: Library not loaded FFmpeg

I'm trying to run the demo application on device, but I can't get around this problem:

dyld: Library not loaded: @loader_path/Frameworks/FFmpeg.framework/FFmpeg
  Referenced from: /private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/ShakaPlayerEmbedded
  Reason: no suitable image found.  Did find:
	/private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/Frameworks/FFmpeg.framework/FFmpeg: code signature invalid for '/private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/Frameworks/FFmpeg.framework/FFmpeg'

	/private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/Frameworks/FFmpeg.framework/FFmpeg: code signature invalid for '/private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/Frameworks/FFmpeg.framework/FFmpeg'

	/private/var/containers/Bundle/Application/97987027-2D30-4C55-9464-BB5CD4074094/sample_xcode_project.app/Frameworks/ShakaPlayerEmbedded.framework/Frameworks/FFmpeg.framework/FFmpeg: stat() failed with errno=1

I also tried to manually build the framework, link the FFmpeg framework which is inside ShakaPlayerEmbedded or the separate one that's generated when manually building, but still the same issue persists, at this point I don't know what else to try.

Had anyone this issue, how to properly link the frameworks?

In case it's relevant:
Xcode Version 10.2.1
MacOS Mojave 10.14.5

Support MPEG2-TS media

I'm trying to use the sample_xcode_project.xcodeproj to play some HLS videos with TS fragment. But after trying with many HLS testing videos (e.g. https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8
), the player keep showing : Shaka Error MANIFEST.CONTENT_UNSUPPORTED_BY_BROWSER ()

However, when using the browser version of Shaka Player

(https://shaka-player-demo.appspot.com/demo/#asset=https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8;lang=en-US;videoRobustness=http://192.168.18.193:8111/playlist.m3u8;audioRobustness=http://192.168.18.193:8111/playlist.m3u8;build=uncompiled)

The HLS video can be played. Hence I'm not sure if the problem is related to the player or that particular m3u8 file format is not supported. If the problem is related to the latter one, could you please provide some m3u8 files that can be played for this player. Thanks in advance!

Provide LicenseServerConfig for Objective-C

We have a utility in the C++ API (under utils.h) for creating the path to the license server configuration. This avoids having to escape the name and makes the arguments a bit cleaner. We should port this to the Objective-C API too.

// C++ usage:
player.Configure(LicenseServerConfig("com.widevine.alpha"), "https://...");

How to get error code from errorCallback

I'm trying to setup error handling for the player with errorCallback, on the following way (playing some broken url):

_player = [[ShakaPlayerView alloc] init];
_player.errorCallback = ^(NSString *errorMessage, NSString *errorContext) {
         NSLog(@"ERROR MSG: %@ - %@", errorMessage, errorContext);
 };

The response that it returns is:
ERROR MSG: Shaka Error NETWORK.BAD_HTTP_STATUS (https://dash.akamaized.net/dash264/TestCases/1c/q,404,,[object Object],0) - Error loading asset

However I'd like to only use the code BAD_HTTP_STATUS , BAD_ENCODING, etc...

Is there a method to get this, or is the only way to slice the error message.
I didn't find anything specific in the documentation.

Support for FLAC in ISO-BMFF

Shaka-player on Chrome enables playback of encrypted FLAC in ISO-BMFF, will that also be a feature of shaka-player-embedded when it's out of beta?

Curl CA cert location

Currently, we configure curl's CA cert location at compile time to refer to some system-wide location. When we have defined local storage for runtime resources, we should configure curl at runtime to look for CA certs there, instead. The macro to define curl's default should be /dev/null or something so that only the runtime configuration can be used.

The compile-time search for CA certs will be used to copy the bundle to the runtime folder in the build output.

playbackRate support

We should support playbackRate values besides 0 and 1.
Okay, we might technically support negative playback rates also. But it'd be nice to support other, positive playback rates like 1.5 and 2.

Add a client callback interface for Video events

I'm trying to figure out when the player enters a playing state, I'd prefer doing it via an event or callback rather than polling video->Playing().

I'm not that familiar with Shaka Player, but it seems like the onstatechange event might be what I'm looking for. I tried implementing support for the event, but either I missed something, or it's never fired. I'd appreciate it if you could point me in the right direction.

Here's the code I added to AttachListeners() in shaka::Player, I also added a new function shaka::Player::Client::OnStateChange.

const auto on_state_change = [=](Handle<JsObject> event) {
    LocalVar<JsValue> state = GetMemberRaw(event, "state");
    client->OnStateChange(ConvertToString(state));
};
ATTACH("onstatechange", on_state_change);

Apple TV lagging

Hi,

First of all thanks for this awesome effort!

We’re running into problems while using shaka-player-embedded on the Apple TV (A1625 - AppleTV5,3). Video playback seems a bit laggy.

The player is using constantly 60-70% of CPU with an occasional 100% CPU load peaks. Those peaks seem to be the reason for laggy playback.

We’re playing unencrypted HLS in fMP4 container, h264 + aac audio:

Input #0, mpegts, from '/tmp/chunk.mp4':
Duration: 00:00:05.01, start: 11770.739911, bitrate: 5127 kb/s
Program 1
Metadata:
service_name : Golf Channel HD [DVL]
service_provider: kuki
Stream #0:0[0x100]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:10x101: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 131 kb/s
Stream #0:20x102: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 132 kb/s

Do you guys have any suggestions? We’ve tried release build with full optimizations of course but it seems to make little to no difference.

Unfortunately, our test stream URL can not be posted publicly but I can provide it in private communication.

Show buffer stats in demo app

We have a DebugDumpStats() method in VideoController that is used to debug the media pipeline. It would be much more helpful if this info appeared in the demo app, probably as an overlay in one of the corners. It should display the following info:

  • All buffered range times (maybe include decoded ranges too, would require a new API).
  • The current playback rate.
  • The current media ready state.
  • The current video time.
  • The current video duration.

Allow running automated test on custom asset

We should add an automated test to check custom assets similar to the JavaScript player's external tests. This test will accept either command-line arguments or a configuration file to determine what asset to play and the Player configuration to use. This will allow partners to check their asset plays and allows us to automatically check assets (e.g. during a release).

Add QOE tracking

We should track and expose QOE (quality of experience) information to the app. We should expose the following information:

  • player.stats()
  • How long until frames are rendered (from before load() to a segment downloaded, demuxed, decoded, and rendered)
  • Real framerate
  • Number/frequency of dropped frames (already tracked but not exposed)
  • Frequency and duration of buffering stalls
  • Buffer fullness
  • Smoothness? (measured using buffering stalls, dropped frames, and how often we are delayed for decoding)

Investigate performance impact of texture conversions

We may need to manually copy the texture data from an FFmpeg frame to a hardware texture. This happens on desktop for all frames since we can't leverage the hardware frames from FFmpeg. However, this can happen on iOS too if we use a software decoder.

When the color space and linesize matches, we can just use memcpy, which is about as fast as possible. However, we may need to do color space or linesize conversions to match the hardware texture. We can use swscale to do conversions for us, but it still uses the CPU to copy the data, so it may not be ideal. Also, FFmpeg sometimes adds padding to each line, so we need to copy each line manually to remove it.

We should investigate how significant the performance impact of these are and if there is a better way to do it. We may be able to use OpenGL(ES) to leverage the GPU to do some of this. Color space conversions would be extremely easy and fast to do on the GPU.

Enable remaining sanitizers

By using the Chromium build scripts, we get (mostly) free support for the clang sanitizers. We have support for the AddressSanitizer, ThreadSanitizer, and UndefinedBehaviorSanitizer. But we should add support for the others:

  • The LeakSanitizer is getting linker errors from a missing libclang binary.
  • The MemorySanitizer gets errors from V8 make snapshot (and blacklisting doesn't seem to work).

Unless, of course, we decide to switch over to Bazel as proposed in #19.

Allow incremental configure runs

Now, when we run ./configure, it runs configure for each third-party dependency. But if you want to change some build settings, this may not be needed. This is especially important on some machines/platforms where these steps can take a while (FFmpeg configure takes over a minute on my Mac machine).

We should detect when we don't need to run configure again for a third-party dependency.

Consider changing how we handle logging

Right now we use glog for logging. It is a stable library, easy to use, and extensible. The problem is that an app can't change our logging without also using glog. The app doesn't need to use glog for all their logging, but they will need to link against glog to be able to change how we print logs. To make matters worse, we link against glog statically, so we need to export the glog symbols and the app needs to use that version, they can't use their own version or it won't affect us.

Having us export the symbols (which we technically do now) is probably not a good idea since it makes glog part of our ABI, so we can't upgrade glog unless it is either ABI compatible or a major version number.

We could link against glog dynamically, which would make it more clear for the app. It also puts the app in charge of handling the glog dependency. Unlike FFmpeg, we don't need to worry about security concerns about loading glog dynamically since the only thing we give glog is stuff we are printing to the console anyway.

One alternative would be to write our own log abstraction. This could be implemented by the app to provide their own logging system easily. We would by default use glog internally and just hide it so the app doesn't need to worry about it.

We should look at other popular C++ libraries to see how they handle logging. FFmpeg uses a custom log callback, which would be similar to how I suggested above.

Add metrics analysis

We should track how long and often things happen so we can analyze the performance of the product. This data will only be collected locally, and will not be sent to a server; the data will be stored in a separate directory in the data directory. The collection will be removed from official builds and will be opt-in for open-source builds.

We should have metrics for at least the following:

  • How long it takes to draw a frame.
  • How long it takes to decode a frame.
  • How long it takes to decrypt a frame.
  • How often we render frames.
  • How long a seek takes.
  • How long shutdown takes.
  • How often the main thread goes idle and what percentage of time it is working.
  • Percentage of time worker threads are idle.
  • How often GC happens.
  • How long a GC takes (V8 is complicated since it is incremental, so it does other stuff while GC is "running").
  • How much memory JavaScript objects take up (both backing objects and the JS objects themselves).
  • How much memory the media frames (both encoded and decoded) take up.

Note this is only for internal tracking and performance analysis, this is not for exposing QOE info to the app. There will be a separate API for QOE data, #16.

Generate license.json based on GN dependencies

We can use gn desc to determine what a target depends on. Using this, we can determine what third-party things a target depends on. The app generates a json file containing the licenses of third-party dependencies, but this file is based on a static list of dependencies. We should use gn desc to determine the third-party dependencies automatically. This will ensure we don't forget to update it, will make adding this to the Mac framework easier, and allow us to use this on Linux too.

Handle slow decoding better

Currently we only stall the media pipeline if we don't have enough (encoded) data buffered. This means that if the device isn't decoding frames fast enough, the current time will continue to move despite the frames not changing. The previous way was to use the decoded frames to stall the buffer; but this isn't ideal either since it doesn't allow us to drop frames.

The behavior for slow decoders is split into two areas: (1) dropping frames to keep up with the current playhead time and (2) stalling the media pipeline (i.e. stop current time from progressing) so the decoding can catch up.

We should avoid stalling the pipeline due to decoder problems since, with small stalls, it looks better to move time forward rather than stop time and start it again. But if there are large delays or if we aren't playing anything, we should stall the pipeline.

We should also add discarding encoded frames. If we detect that the playhead is at the next keyframe, we should just ignore the remaining frames, reset, and start again at the next keyframe. We should also look more into FFmpeg's API to handle discarding the decoded frames but still processing them for dependent frames. Our attempts in the past didn't work since it seemed like it would not process them and would lead to problems decoding the next frames.

Setup tutorial screenshots are too wide

The screenshots I made for the setup tutorial are wide enough that, on smaller monitors, they require horizontal scrolling. They should be cropped, or redone with Xcode in windowed mode.

How to set DRM server for ShakaPlayerView

I build shaka player embedded with Widevine CDM plugin, but I can't figure out how to set the DRM server.

I checked shaka player documentation and found the following:

player.configure({
  drm: {
    servers: {
      'com.widevine.alpha': 'https://foo.bar/drm/widevine',
      'com.microsoft.playready': 'https://foo.bar/drm/playready'
    }
  }
});

I tried:

ShakaPlayerView *_player = [[ShakaPlayerView alloc] init];

[_player configure:@"drm" withString:@"{servers: {'com.widevine.alpha': 'https://proxy.uat.widevine.com/proxy}'}"];

And this gives me the following error [Error]: "Invalid config, wrong type for .drm"
So I assume the key drm is correct? At least based on this at line 79.

Which is the correct type?
Since _player configure has 3 "types":

(const NSString *)  withBool:(Bool)
(const NSString *)  withDouble:(Double)
(const NSString *)  withString:(const NSString *)

I assumed withString would be the proper way to set it.
Or is there a different way to set it?

Add support for encrypted MP4 sample groups

Currently, we only support MP4 encryption when not using sample groups. This is the most common case, but when using key rotation, samples encrypted with different keys will use different sample groups. We'll need to update FFmpeg to handle this. FFmpeg already supports sample groups, but we need to add support for the seig sample group entry that contains the group-specific encryption info. Then we need to associate each frame with the sample group so we can determine which encryption info to use.

Allow app to specify audio output device

We currently use SDL to render audio and we use the default SDL audio output device. We should add a way for the app to specify where to output the audio, similar to how we give frame data to the app for rendering if they want. This could be done by having a ListAudioDevices method and a SelectAudioDevice method on the Video, or we could use a generic audio sink where we just give the bytes to the app similar to the frame data. See TODO.

Linux/IMX support

I would like to use shaka embedded in Linux environhment. In the description, you say that there is a Linux port, how can I use it? Morever, I have an ARM/IMX board, does shaka embedded support hardware acceleration for this architecture?
Best regards,
Roberto

Announcing Shaka Streamer!

Shaka Streamer

Shaka Streamer offers a simple config-file based approach to preparing streaming media. It greatly simplifies the process of using FFmpeg and Shaka Packager for both VOD and live content.

Just write a couple of YAML config files (or adapt one of our examples) and start streaming!

For more information, check out https://github.com/google/shaka-streamer/

Perform submodule sync in ./configure

If your submodule URLs are out-of-date, you need to run the command git submodule sync to fix them. git submodule update does not solve the problem. It'd be nice if we did this automatically when configuring.

Write clang plugin to audit thread use

Handle multi-threaded use is one of the most complex tasks in C++. For much of our code, we make a lot of assumptions on which thread things happen. This allows us to avoid having locks for each type, but can complicate usage since it is purely by convention.

One way to help would be to add annotations to the code and have a clang plugin analyze the calls to verify things happen on the correct thread. For example, we could annotate a method with THREAD_AFFINITY(MainThread) to indicate that method should only be called from the main thread. Then if you call the method from a different thread it will produce an error. It will detect this only using the annotations, so we'll need to annotate every method and type.

One problem with this is the standard container functions; it may be hard to audit those calls since we can't annotate those functions. For example, detecting a call to a method from std::find is OK so long as the caller of std::find is in the correct thread; but this may be hard to detect. It also may be difficult to detect calls through std::function.

This could also warn about incorrect lock usage. All methods need to be marked with THREAD_AFFINITY or with THREAD_SAFE and use a lock. It will give us an error if a method uses THREAD_SAFE and doesn't use a lock. This ensures people don't misuse locks for getters/setters which do still require locks.

For example:

THREAD_AFFINITY(MainThread)  // All member methods implicitly have this affinity.
class HTMLVideoElement : public BackingObject {};

THREAD_SAFE
void ScheduleEvent(...);

THREAD_AFFINITY(Demuxer)
void DoSomething() {
  video_->CurrentTime();  // Error: Calling CurrentTime from incorrect thread.
}

Support for downloading Widevine protected content

We're considering using shaka-player-embedded to consolidate the files we deliver through our CDNs, and which DRMs we use. Do you have any plans of supporting downloading of HLS streams and Widevine licenses for offline use?

Catch errors from loading the library

When initially loading the library, the error catching callback has not yet been set by the user. Because of that, any errors that are thrown at that time aren't passed on to the user. This can be reproduced by adding a typo into shaka-player.compiled.js or shaka-player.compiled.debug.js.

Unable to build with --cpu arm64

Hi,

I am trying to build the project for a test deployment to an iPhone. Configuring and building for the simulator (without passing the --cpu works without issues).

../configure --ios --cpu arm64
Loading required submodules...
Downloading GN from cloud storage...
Generating files for boringssl...
Running configure for binutils...
Running configure for clang...
Running configure for sdl2...
Running configure for ffmpeg...
Running configure for gflags...
Standard output:
-- The CXX compiler identification is Clang 7.0.0
-- Check for working CXX compiler: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++
-- Check for working CXX compiler: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for C++ include unistd.h
-- Looking for C++ include unistd.h - not found
-- Looking for C++ include stdint.h
-- Looking for C++ include stdint.h - not found
-- Looking for C++ include inttypes.h
-- Looking for C++ include inttypes.h - not found
-- Looking for C++ include sys/types.h
-- Looking for C++ include sys/types.h - not found
-- Looking for C++ include sys/stat.h
-- Looking for C++ include sys/stat.h - not found
-- Looking for C++ include fnmatch.h
-- Looking for C++ include fnmatch.h - not found
-- Looking for C++ include stddef.h
-- Looking for C++ include stddef.h - found
-- Check size of uint32_t
-- Check size of uint32_t - failed
-- Check size of u_int32_t
-- Check size of u_int32_t - failed
-- Configuring incomplete, errors occurred!
See also "/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeOutput.log".
See also "/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeError.log".


Standard error:
CMake Error at CMakeLists.txt:282 (message):
  Do not know how to define a 32-bit integer quantity on your system! Neither
  uint32_t, u_int32_t, nor __int32 seem to be available.  Set
  [GFLAGS_]INTTYPES_FORMAT to either C99, BSD, or VC7 and try again.

CMakeOutput.log:

The system is: Darwin - 18.6.0 - x86_64
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ 
Build flags: -arch;arm64;-miphoneos-version-min=9.0
Id flags: -c 

The output was:
0


Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CMakeCXXCompilerId.o"

The CXX compiler identification is Clang, found in "/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/3.14.5/CompilerIdCXX/CMakeCXXCompilerId.o"

Determining if the CXX compiler works passed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_6d407/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_6d407.dir/build.make CMakeFiles/cmTC_6d407.dir/build
Building CXX object CMakeFiles/cmTC_6d407.dir/testCXXCompiler.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_6d407.dir/testCXXCompiler.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
Linking CXX executable cmTC_6d407
/usr/local/Cellar/cmake/3.14.5/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6d407.dir/link.txt --verbose=1
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/  -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/cmTC_6d407.dir/testCXXCompiler.cxx.o  -o cmTC_6d407 
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]


Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_93ea0/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_93ea0.dir/build.make CMakeFiles/cmTC_93ea0.dir/build
Building CXX object CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -v -Wl,-v -o CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/Cellar/cmake/3.14.5/share/cmake/Modules/CMakeCXXCompilerABI.cpp
clang version 7.0.0 (trunk 335864)
Target: aarch64-apple-darwin18.6.0
Thread model: posix
InstalledDir: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin
clang: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
 "/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang" -cc1 -triple arm64-apple-ios9.0.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all -disable-free -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -faligned-alloc-unavailable -target-cpu cyclone -target-feature +fp-armv8 -target-feature +neon -target-feature +crypto -target-feature +zcm -target-feature +zcz -target-abi darwinpcs -fallow-half-arguments-and-returns -dwarf-column-info -debugger-tuning=lldb -target-linker-version 302.3 -v -coverage-notes-file /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.gcno -resource-dir /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -stdlib=libc++ -fdeprecated-macro -fdebug-compilation-dir /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp -ferror-limit 19 -fmessage-length 0 -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fobjc-runtime=ios-9.0.0 -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -o CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -x c++ /usr/local/Cellar/cmake/3.14.5/share/cmake/Modules/CMakeCXXCompilerABI.cpp
clang -cc1 version 7.0.0 based upon LLVM 7.0.0svn default target x86_64-apple-darwin18.6.0
ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/c++/v1"
ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/local/include"
ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/Library/Frameworks"
#include "..." search starts here:
#include <...> search starts here:
 /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1
 /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include
 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include
 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory)
End of search list.
Linking CXX executable cmTC_93ea0
/usr/local/Cellar/cmake/3.14.5/bin/cmake -E cmake_link_script CMakeFiles/cmTC_93ea0.dir/link.txt --verbose=1
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/  -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  -v -Wl,-v CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_93ea0 
clang version 7.0.0 (trunk 335864)
Target: aarch64-apple-darwin18.6.0
Thread model: posix
InstalledDir: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
 "/usr/bin/ld" -demangle -lto_library /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/libLTO.dylib -dynamic -arch arm64 -iphoneos_version_min 9.0.0 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/ -o cmTC_93ea0 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/lib/darwin/libclang_rt.ios.a
@(#)PROGRAM:ld  PROJECT:ld64-450.3
BUILD 18:45:16 Apr  4 2019
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
Library search paths:
	/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/usr/lib
Framework search paths:
	/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/


Parsed CXX implicit include dir info from above output: rv=done
  found start of include info
  found start of implicit include info
    add: [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1]
    add: [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include]
    add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include]
  end of search list found
  collapse include dir [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1] ==> [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1]
  collapse include dir [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include] ==> [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include]
  collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include]
  implicit include dirs: [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1;/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include]


Parsed CXX implicit link information from above output:
  link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
  ignore line: [Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp]
  ignore line: []
  ignore line: [Run Build Command(s):/usr/bin/make cmTC_93ea0/fast ]
  ignore line: [/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_93ea0.dir/build.make CMakeFiles/cmTC_93ea0.dir/build]
  ignore line: [Building CXX object CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o]
  ignore line: [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -v -Wl,-v -o CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/Cellar/cmake/3.14.5/share/cmake/Modules/CMakeCXXCompilerABI.cpp]
  ignore line: [clang version 7.0.0 (trunk 335864)]
  ignore line: [Target: aarch64-apple-darwin18.6.0]
  ignore line: [Thread model: posix]
  ignore line: [InstalledDir: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin]
  ignore line: [clang: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument]]
  ignore line: [clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]]
  ignore line: [ "/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang" -cc1 -triple arm64-apple-ios9.0.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all -disable-free -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -faligned-alloc-unavailable -target-cpu cyclone -target-feature +fp-armv8 -target-feature +neon -target-feature +crypto -target-feature +zcm -target-feature +zcz -target-abi darwinpcs -fallow-half-arguments-and-returns -dwarf-column-info -debugger-tuning=lldb -target-linker-version 302.3 -v -coverage-notes-file /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.gcno -resource-dir /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -stdlib=libc++ -fdeprecated-macro -fdebug-compilation-dir /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp -ferror-limit 19 -fmessage-length 0 -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fobjc-runtime=ios-9.0.0 -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -o CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -x c++ /usr/local/Cellar/cmake/3.14.5/share/cmake/Modules/CMakeCXXCompilerABI.cpp]
  ignore line: [clang -cc1 version 7.0.0 based upon LLVM 7.0.0svn default target x86_64-apple-darwin18.6.0]
  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/c++/v1"]
  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/local/include"]
  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/Library/Frameworks"]
  ignore line: [#include "..." search starts here:]
  ignore line: [#include <...> search starts here:]
  ignore line: [ /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1]
  ignore line: [ /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include]
  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include]
  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks (framework directory)]
  ignore line: [End of search list.]
  ignore line: [Linking CXX executable cmTC_93ea0]
  ignore line: [/usr/local/Cellar/cmake/3.14.5/bin/cmake -E cmake_link_script CMakeFiles/cmTC_93ea0.dir/link.txt --verbose=1]
  ignore line: [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/  -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  -v -Wl,-v CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_93ea0 ]
  ignore line: [clang version 7.0.0 (trunk 335864)]
  ignore line: [Target: aarch64-apple-darwin18.6.0]
  ignore line: [Thread model: posix]
  ignore line: [InstalledDir: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin]
  ignore line: [clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]]
  link line: [ "/usr/bin/ld" -demangle -lto_library /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/libLTO.dylib -dynamic -arch arm64 -iphoneos_version_min 9.0.0 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/ -o cmTC_93ea0 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/lib/darwin/libclang_rt.ios.a]
    arg [/usr/bin/ld] ==> ignore
    arg [-demangle] ==> ignore
    arg [-lto_library] ==> ignore, skip following value
    arg [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/libLTO.dylib] ==> skip value of -lto_library
    arg [-dynamic] ==> ignore
    arg [-arch] ==> ignore
    arg [arm64] ==> ignore
    arg [-iphoneos_version_min] ==> ignore
    arg [9.0.0] ==> ignore
    arg [-syslibroot] ==> ignore
    arg [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/] ==> ignore
    arg [-o] ==> ignore
    arg [cmTC_93ea0] ==> ignore
    arg [-search_paths_first] ==> ignore
    arg [-headerpad_max_install_names] ==> ignore
    arg [-v] ==> ignore
    arg [CMakeFiles/cmTC_93ea0.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
    arg [-lc++] ==> lib [c++]
    arg [-lSystem] ==> lib [System]
    arg [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/lib/darwin/libclang_rt.ios.a] ==> lib [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/lib/darwin/libclang_rt.ios.a]
  Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/usr/lib]
  Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/]
  remove lib [System]
  remove lib [/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/lib/darwin/libclang_rt.ios.a]
  collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/usr/lib]
  collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks]
  implicit libs: [c++]
  implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/usr/lib]
  implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks]


Determining if the include file stddef.h exists passed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_fe047/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_fe047.dir/build.make CMakeFiles/cmTC_fe047.dir/build
Building CXX object CMakeFiles/cmTC_fe047.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_fe047.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
Linking CXX executable cmTC_fe047
/usr/local/Cellar/cmake/3.14.5/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fe047.dir/link.txt --verbose=1
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/  -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names   CMakeFiles/cmTC_fe047.dir/CheckIncludeFile.cxx.o  -o cmTC_fe047 
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]

CMakeError.log

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ 
Build flags: -arch;arm64;-miphoneos-version-min=9.0
Id flags:  

The output was:
1
ld: warning: ignoring file /usr/lib/libSystem.dylib, missing required architecture arm64 in file /usr/lib/libSystem.dylib (2 slices)
ld: warning: ignoring file /usr/lib/libc++.dylib, missing required architecture arm64 in file /usr/lib/libc++.dylib (2 slices)
ld: dynamic main executables must link with libSystem.dylib for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)


Determining if the include file unistd.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_d711a/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_d711a.dir/build.make CMakeFiles/cmTC_d711a.dir/build
Building CXX object CMakeFiles/cmTC_d711a.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_d711a.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:71:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:27:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:32:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:71:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:27:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:71:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:27:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_blksize_t;     /* preferred block size */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_dev_t;         /* dev_t */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_gid_t;         /* [???] process and group IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:61:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_id_t;          /* [XSI] pid_t, uid_t, or gid_t*/
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:62:9: error: unknown type name '__uint64_t'; did you mean '__uint128_t'?
typedef __uint64_t      __darwin_ino64_t;       /* [???] Used for 64 bit inodes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:68:9: error: unknown type name '__darwin_natural_t'
typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:70:9: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
typedef __uint16_t      __darwin_mode_t;        /* [???] Some file attributes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:71:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_off_t;         /* [???] Used for file sizes */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:72:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_pid_t;         /* [???] process and group IDs */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:73:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_sigset_t;      /* [???] signal set */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:74:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:75:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_uid_t;         /* [???] user IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:76:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_useconds_t;    /* [???] microseconds */
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:71:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:43:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_wctype_t;
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:72:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/unistd.h:180:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_size_t.h:31:9: error: unknown type name '__darwin_size_t'
typedef __darwin_size_t        size_t;
        ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/unistd.h:72:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/unistd.h:199:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_ssize_t.h:30:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/types.h:37:2: error: architecture not supported
#error architecture not supported
 ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[1]: *** [CMakeFiles/cmTC_d711a.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_d711a/fast] Error 2


Determining if the include file stdint.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_10aa4/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_10aa4.dir/build.make CMakeFiles/cmTC_10aa4.dir/build
Building CXX object CMakeFiles/cmTC_10aa4.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_10aa4.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:52:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:32:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:52:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:52:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_blksize_t;     /* preferred block size */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_dev_t;         /* dev_t */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'
typedef __uint32_t      __darwin_gid_t;         /* [???] process and group IDs */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:61:9: error: unknown type name '__uint32_t'
typedef __uint32_t      __darwin_id_t;          /* [XSI] pid_t, uid_t, or gid_t*/
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:62:9: error: unknown type name '__uint64_t'; did you mean 'uint64_t'?
typedef __uint64_t      __darwin_ino64_t;       /* [???] Used for 64 bit inodes */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types/_uint64_t.h:31:28: note: 'uint64_t' declared here
typedef unsigned long long uint64_t;
                           ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:52:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:68:9: error: unknown type name '__darwin_natural_t'
typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:70:9: error: unknown type name '__uint16_t'
typedef __uint16_t      __darwin_mode_t;        /* [???] Some file attributes */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:71:9: error: unknown type name '__int64_t'
typedef __int64_t       __darwin_off_t;         /* [???] Used for file sizes */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:72:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_pid_t;         /* [???] process and group IDs */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:73:9: error: unknown type name '__uint32_t'
typedef __uint32_t      __darwin_sigset_t;      /* [???] signal set */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:74:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:75:9: error: unknown type name '__uint32_t'
typedef __uint32_t      __darwin_uid_t;         /* [???] user IDs */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:76:9: error: unknown type name '__uint32_t'
typedef __uint32_t      __darwin_useconds_t;    /* [???] microseconds */
        ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:53:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_intptr_t.h:30:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/types.h:37:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:53:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_intptr_t.h:32:9: error: unknown type name '__darwin_intptr_t'
typedef __darwin_intptr_t       intptr_t;
        ^
18 errors generated.
make[1]: *** [CMakeFiles/cmTC_10aa4.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_10aa4/fast] Error 2


Determining if the include file inttypes.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_0e690/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_0e690.dir/build.make CMakeFiles/cmTC_0e690.dir/build
Building CXX object CMakeFiles/cmTC_0e690.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_0e690.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:223:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:226:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:27:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:226:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:27:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_blksize_t;     /* preferred block size */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_dev_t;         /* dev_t */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_gid_t;         /* [???] process and group IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:61:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_id_t;          /* [XSI] pid_t, uid_t, or gid_t*/
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:62:9: error: unknown type name '__uint64_t'; did you mean '__uint128_t'?
typedef __uint64_t      __darwin_ino64_t;       /* [???] Used for 64 bit inodes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:68:9: error: unknown type name '__darwin_natural_t'
typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:70:9: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
typedef __uint16_t      __darwin_mode_t;        /* [???] Some file attributes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:71:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_off_t;         /* [???] Used for file sizes */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:72:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_pid_t;         /* [???] process and group IDs */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:73:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_sigset_t;      /* [???] signal set */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:74:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:75:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_uid_t;         /* [???] user IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:76:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_useconds_t;    /* [???] microseconds */
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:226:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/_types.h:43:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_wctype_t;
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:229:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:53:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_intptr_t.h:30:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/types.h:37:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/inttypes.h:247:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/inttypes.h:30:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/inttypes.h:229:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/include/c++/v1/stdint.h:119:
In file included from /Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include/stdint.h:63:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/stdint.h:53:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_intptr_t.h:32:9: error: unknown type name '__darwin_intptr_t'
typedef __darwin_intptr_t       intptr_t;
        ^
19 errors generated.
make[1]: *** [CMakeFiles/cmTC_0e690.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_0e690/fast] Error 2


Determining if the include file sys/types.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_92b90/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_92b90.dir/build.make CMakeFiles/cmTC_92b90.dir/build
Building CXX object CMakeFiles/cmTC_92b90.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_92b90.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:75:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:78:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/types.h:37:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:79:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:79:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_blksize_t;     /* preferred block size */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_dev_t;         /* dev_t */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_gid_t;         /* [???] process and group IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:61:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_id_t;          /* [XSI] pid_t, uid_t, or gid_t*/
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:62:9: error: unknown type name '__uint64_t'; did you mean '__uint128_t'?
typedef __uint64_t      __darwin_ino64_t;       /* [???] Used for 64 bit inodes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:68:9: error: unknown type name '__darwin_natural_t'
typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:70:9: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
typedef __uint16_t      __darwin_mode_t;        /* [???] Some file attributes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:71:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_off_t;         /* [???] Used for file sizes */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:72:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_pid_t;         /* [???] process and group IDs */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:73:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_sigset_t;      /* [???] signal set */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:74:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:75:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_uid_t;         /* [???] user IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:76:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_useconds_t;    /* [???] microseconds */
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:81:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/endian.h:37:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/types.h:95:9: error: unknown type name 'u_int64_t'
typedef u_int64_t               u_quad_t;       /* quads */
        ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[1]: *** [CMakeFiles/cmTC_92b90.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_92b90/fast] Error 2


Determining if the include file sys/stat.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_4ae7b/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_4ae7b.dir/build.make CMakeFiles/cmTC_4ae7b.dir/build
Building CXX object CMakeFiles/cmTC_4ae7b.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_4ae7b.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:73:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:32:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:73:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:73:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_blksize_t;     /* preferred block size */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_dev_t;         /* dev_t */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_gid_t;         /* [???] process and group IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:61:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_id_t;          /* [XSI] pid_t, uid_t, or gid_t*/
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:62:9: error: unknown type name '__uint64_t'; did you mean '__uint128_t'?
typedef __uint64_t      __darwin_ino64_t;       /* [???] Used for 64 bit inodes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:68:9: error: unknown type name '__darwin_natural_t'
typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:70:9: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
typedef __uint16_t      __darwin_mode_t;        /* [???] Some file attributes */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:71:9: error: unknown type name '__int64_t'; did you mean '__int128_t'?
typedef __int64_t       __darwin_off_t;         /* [???] Used for file sizes */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:72:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_pid_t;         /* [???] process and group IDs */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:73:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_sigset_t;      /* [???] signal set */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:74:9: error: unknown type name '__int32_t'; did you mean '__int128_t'?
typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */
        ^
note: '__int128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:75:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_uid_t;         /* [???] user IDs */
        ^
note: '__uint128_t' declared here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types.h:76:9: error: unknown type name '__uint32_t'; did you mean '__uint128_t'?
typedef __uint32_t      __darwin_useconds_t;    /* [???] microseconds */
        ^
note: '__uint128_t' declared here
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:78:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_timespec.h:31:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/machine/types.h:37:2: error: architecture not supported
#error architecture not supported
 ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:78:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_timespec.h:35:2: error: unknown type name '__darwin_time_t'
        __darwin_time_t tv_sec;
        ^
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/stat.h:95:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/_types/_nlink_t.h:31:9: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
typedef __uint16_t        nlink_t;      /* link count */
        ^
note: '__uint128_t' declared here
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[1]: *** [CMakeFiles/cmTC_4ae7b.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_4ae7b/fast] Error 2


Determining if the include file fnmatch.h exists failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_b162f/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_b162f.dir/build.make CMakeFiles/cmTC_b162f.dir/build
Building CXX object CMakeFiles/cmTC_b162f.dir/CheckIncludeFile.cxx.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_b162f.dir/CheckIncludeFile.cxx.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
In file included from /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/fnmatch.h:61:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/cdefs.h:784:2: error: Unsupported architecture
#error Unsupported architecture
 ^
1 error generated.
make[1]: *** [CMakeFiles/cmTC_b162f.dir/CheckIncludeFile.cxx.o] Error 1
make: *** [cmTC_b162f/fast] Error 2


Determining size of uint32_t failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_278a9/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_278a9.dir/build.make CMakeFiles/cmTC_278a9.dir/build
Building CXX object CMakeFiles/cmTC_278a9.dir/uint32_t.cpp.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_278a9.dir/uint32_t.cpp.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:23:12: error: use of undeclared identifier 'uint32_t'
  ('0' + ((SIZE / 10000)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(uint32_t))
                     ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:24:12: error: use of undeclared identifier 'uint32_t'
  ('0' + ((SIZE / 1000)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(uint32_t))
                     ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:25:12: error: use of undeclared identifier 'uint32_t'
  ('0' + ((SIZE / 100)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(uint32_t))
                     ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:26:12: error: use of undeclared identifier 'uint32_t'
  ('0' + ((SIZE / 10)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(uint32_t))
                     ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:27:12: error: use of undeclared identifier 'uint32_t'
  ('0' +  (SIZE    % 10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(uint32_t))
                     ^
5 errors generated.
make[1]: *** [CMakeFiles/cmTC_278a9.dir/uint32_t.cpp.o] Error 1
make: *** [cmTC_278a9/fast] Error 2

/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/uint32_t.cpp:
#include <stddef.h>


#undef KEY
#if defined(__i386)
# define KEY '_','_','i','3','8','6'
#elif defined(__x86_64)
# define KEY '_','_','x','8','6','_','6','4'
#elif defined(__ppc__)
# define KEY '_','_','p','p','c','_','_'
#elif defined(__ppc64__)
# define KEY '_','_','p','p','c','6','4','_','_'
#elif defined(__aarch64__)
# define KEY '_','_','a','a','r','c','h','6','4','_','_'
#elif defined(__ARM_ARCH_7A__)
# define KEY '_','_','A','R','M','_','A','R','C','H','_','7','A','_','_'
#elif defined(__ARM_ARCH_7S__)
# define KEY '_','_','A','R','M','_','A','R','C','H','_','7','S','_','_'
#endif

#define SIZE (sizeof(uint32_t))
char info_size[] =  {'I', 'N', 'F', 'O', ':', 's','i','z','e','[',
  ('0' + ((SIZE / 10000)%10)),
  ('0' + ((SIZE / 1000)%10)),
  ('0' + ((SIZE / 100)%10)),
  ('0' + ((SIZE / 10)%10)),
  ('0' +  (SIZE    % 10)),
  ']',
#ifdef KEY
  ' ','k','e','y','[', KEY, ']',
#endif
  '\0'};

#ifdef __CLASSIC_C__
int main(argc, argv) int argc; char *argv[];
#else
int main(int argc, char *argv[])
#endif
{
  int require = 0;
  require += info_size[argc];
  (void)argv;
  return require;
}


Determining size of u_int32_t failed with the following output:
Change Dir: /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_89bfd/fast 
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_89bfd.dir/build.make CMakeFiles/cmTC_89bfd.dir/build
Building CXX object CMakeFiles/cmTC_89bfd.dir/u_int32_t.cpp.o
/Users/dominik/code/cpp/shaka-player-embedded/third_party/llvm-build/Release+Asserts/bin/clang++ --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/    -arch arm64 -miphoneos-version-min=9.0  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk   -o CMakeFiles/cmTC_89bfd.dir/u_int32_t.cpp.o -c /Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp
clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:23:12: error: unknown type name 'u_int32_t'; did you mean '__int128_t'?
  ('0' + ((SIZE / 10000)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(u_int32_t))
                     ^
note: '__int128_t' declared here
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:24:12: error: unknown type name 'u_int32_t'; did you mean '__int128_t'?
  ('0' + ((SIZE / 1000)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(u_int32_t))
                     ^
note: '__int128_t' declared here
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:25:12: error: unknown type name 'u_int32_t'; did you mean '__int128_t'?
  ('0' + ((SIZE / 100)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(u_int32_t))
                     ^
note: '__int128_t' declared here
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:26:12: error: unknown type name 'u_int32_t'; did you mean '__int128_t'?
  ('0' + ((SIZE / 10)%10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(u_int32_t))
                     ^
note: '__int128_t' declared here
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:27:12: error: unknown type name 'u_int32_t'; did you mean '__int128_t'?
  ('0' +  (SIZE    % 10)),
           ^
/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:21:22: note: expanded from macro 'SIZE'
#define SIZE (sizeof(u_int32_t))
                     ^
note: '__int128_t' declared here
5 errors generated.
make[1]: *** [CMakeFiles/cmTC_89bfd.dir/u_int32_t.cpp.o] Error 1
make: *** [cmTC_89bfd/fast] Error 2

/Users/dominik/code/cpp/shaka-player-embedded/myBuild/gen/gflags/CMakeFiles/CheckTypeSize/u_int32_t.cpp:
#include <stddef.h>


#undef KEY
#if defined(__i386)
# define KEY '_','_','i','3','8','6'
#elif defined(__x86_64)
# define KEY '_','_','x','8','6','_','6','4'
#elif defined(__ppc__)
# define KEY '_','_','p','p','c','_','_'
#elif defined(__ppc64__)
# define KEY '_','_','p','p','c','6','4','_','_'
#elif defined(__aarch64__)
# define KEY '_','_','a','a','r','c','h','6','4','_','_'
#elif defined(__ARM_ARCH_7A__)
# define KEY '_','_','A','R','M','_','A','R','C','H','_','7','A','_','_'
#elif defined(__ARM_ARCH_7S__)
# define KEY '_','_','A','R','M','_','A','R','C','H','_','7','S','_','_'
#endif

#define SIZE (sizeof(u_int32_t))
char info_size[] =  {'I', 'N', 'F', 'O', ':', 's','i','z','e','[',
  ('0' + ((SIZE / 10000)%10)),
  ('0' + ((SIZE / 1000)%10)),
  ('0' + ((SIZE / 100)%10)),
  ('0' + ((SIZE / 10)%10)),
  ('0' +  (SIZE    % 10)),
  ']',
#ifdef KEY
  ' ','k','e','y','[', KEY, ']',
#endif
  '\0'};

#ifdef __CLASSIC_C__
int main(argc, argv) int argc; char *argv[];
#else
int main(int argc, char *argv[])
#endif
{
  int require = 0;
  require += info_size[argc];
  (void)argv;
  return require;
}



High-level design document

My team is going to look at shaka-player-embedded to try to get a sense of its capabilities. Currently we deliver video playback on iOS through Apple's native AVPlayer.

Something I haven't really seen in the docs (sorry if I've missed something) is a high-level overview of how shaka-player-embedded works. Are you bundling Chromium? Where does the video playback surface come from (i.e. the "video element")? Are there any known limitations compared to using Apple's native tools?

Any information is great. Thanks so much.

Apple acceptance

We're looking at shaka-player-embedded as a potential solution to providing a single set of transcodings/renditions under a single drm umbrella (i.e. dash with fmp4, and widevine for drm). One hurdle is clearly IOS/apple, and the requirement to use hls/fairplay for streaming video (shaka-player-embedded would clearly solve this from a technical perspective, when combined with the widevine CDM).

Before embarking on a journey that turns out to be frivolous and potentially damaging (i.e. our app gets banned from apple's app store due to non-compliance with the hls/fairplay requirement), has anyone run this solution past the folks at apple? Do we know if their requirement for hls/fairplay is purely of a technical nature, or if they are happy to allow transmux on the device from dash to hls (with a subsequent custom CDM stage for widevine drm). Or is their requirement based on non-technical motives that are likely to get implementations using shaka-player-embedded banned?

We'd absolutely love to adopt a solution like this but are clearly concerned about the potential for negative consequences.

Any feedback would be greatly appreciated.

Thanks for your time and great work.

HTTP caching of segments

Is there any way to configure HTTP caching of segments in Shaka Player Embedded? If not, is it possible to get some pointers on how this could be implemented?

I'm trying to cater for the use case where a user plays the same content multiple times. By having a HTTP cache, preferably with a configurable size and a LRU eviction algorithm, we might not have to make any network calls for playing content a user has played recently, which would be beneficial for the user experience as playback start up time could be very short.

Fix ffmpeg error when switching away during playback

If you switch away from the app while there's a player and video instance, ffmpeg outputs the message VideoToolbox decoder needs reconfig, restarting.. , and then the next time we try to decode a frame it errors.
At the moment we are working around this in the sample app, by just tearing down the player when it goes into the background and then re-creating it when it returns into the foreground. But it'd be better if we could go to the root of the problem and solve it there.

[Discussion] Consider switching to Bazel

We currently use GN to build the project. This is Chrome's build system and has a very expressive and versatile syntax. Bazel is built to be a more general-purpose build system. GN has a bunch of problems with it, mainly since it is built around Chrome and isn't built to be a general-purpose build system.

Some problems with GN:

  • Requires downloading 350MB of code and it must be at specific paths, polluting the root folder.
  • Requires downloading depot_tools, even though we don't use much from it.
  • Doesn't give a huge control over flags or other settings.
  • Creating custom toolchains for partners will be difficult.
  • There is no documentation about what flags are being set and partners will have a difficult time changing them (if they can at all).
  • We need to import Chrome's version of test tools, whereas we could use just use googletest directly with Bazel.
  • Probably no one outside Chrome is using GN in their project, which makes integrating our source builds difficult.

Advantages of GN:

  • Works very well "out of the box". Adds useful flags and tools.
  • Battle tested flags and build settings (Bazel doesn't add much for flags, which can be an advantage).

Problems with Bazel:

  • We would need to create build files for V8 and building with Bazel isn't officially supported by V8.
  • BUILD files are hermetic, so it can't read external files. This will make FFmpeg builds harder. (it will probably require generating the BUILD file when ./configure is run)
  • The syntax is harder to read when there are complex conditionals.
  • It is difficult to create build "options" (e.g. --disable-hardware-decode).
  • I haven't tried building/testing things for iOS, but it is supported.

Advantages of Bazel:

  • Can handle downloading third-party code so it isn't even a submodule.
  • iOS build rules are actually documented (https://docs.bazel.build/versions/master/be/objective-c.html)
  • If we want to use abseil (https://abseil.io/, A Google utility library) we can just import it with 4 lines and a deps entry.
  • Including googletest is similarly easy.
  • The extensions are (basically) Python, which will make it easier to understand.
  • Forces us to be more hermetic with packages.
  • Will make it easier to document third-party dependencies and it may be possible to more easily automate getting LICENSE's.

Common problems with both:

  • We need to write our own build files for most third-party projects.
  • Requires partners to use this to build their project or risk binary incompatibilities.
  • We still need an explicit ./configure step to setup third-party dependencies.

Estimated work:
We would need to rewrite all our build files to use Bazel syntax instead, which may involve converting some of our build script helpers. Writing V8 build files may be fairly difficult, depending on how many options we want. It may be as easy as "build every file". The good news is the two build systems can live side-by-side, so we can keep old builds working while we slowly migrate to Bazel if we want.

Personal opinion:
I like GN's syntax much more than Bazel's; it is much easier to understand at a glance. But it is built to be used with Chrom's build files and doesn't give us much flexibility. My concern is also that they won't fix bugs that only affect is: for example, we have problems with using ios_framework_bundle, but they might not fix it because GN isn't built to be used outside Chrome.

Bazel is also much more likely to be used by partners than GN and Bazel's toolchain work is much easier to understand. It also gives us more control over flags and options, which can be good or bad (but probably good for partners).

Suggested next steps:
I would suggest we try converting our build files to see how much work it would be to get an iOS build working. Then we can see how different the syntax is and what it gains us. Then we see if it would be too much work to create and maintain V8 build files (remember that Linux isn't really a target platform).

Improve list of requirements in README and setup tutorial

Building the docs requires Doxygen, which has its own requirements of cmake, a C++ compiler, flex, and bison. Our README doesn't mention that as a requirement.

In addition, the requirements in the setup tutorial and the requirements in the README are different. They should probably be synched up.

Support multiplexed media content

Spawned from #33. We currently only support single-stream media content, we don't support multiplexed content (a media file with both audio and video). Here are my initial thoughts on what will need to change to support this:

We assume now that one MediaSource object represents a single stream. We'll need to split this so source content can contain more than one stream. We'll support two cases from MediaSource: (1) two SourceBuffers for audio and video, and (2) one SourceBuffer containing both audio and video. This will affect adding source buffers since we'll need to determine which codecs are audio or video (we currently use the MIME type for that).

We currently have a bundle of the demuxer, decoder, and frames. We'll need to split this up so the demuxer is separate from the decoders and frames. Once the content is demuxed, we can store the encoded frames in separate streams.

We'll also need to separate the demuxer and the decoder. Right now the MediaProcessor contains both the demuxer and the decoder. We'll need to split that into separate demuxers and decoders so we can create two decoders from one demuxer. This will require passing the FFmpeg-specific codec data from the demuxer to the decoder. But this will help our pipeline if we want to remove the FFmpeg decoders and do our own hardware decoding.

We'll need to be careful about determining which frames come from which streams. When using adaptation, the frames can come from different FFmpeg "streams" but are actually from the same stream from our perspective. We'll need to have a way of indicating that a frame from the demuxer comes from the video or the audio stream.

We'll also need to handle SourceBuffer.remove removing from multiple streams and that the buffered ranges for the SourceBuffer is the combination from audio and video.

Everything from the decoders and below should work fine. They only operate on frames and streams, so it shouldn't matter where the source comes from.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.