-
-
Notifications
You must be signed in to change notification settings - Fork 587
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix Compile Issues on macOS High Sierra 10.13.4 #468
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Usaamah Patel <[email protected]>
To be clear, the issue is with Xcode 9.3, not High Sierra. I'm on 10.13.4 and my build works fine with Xcode 9.0.1, but fails with Xcode 9.3. That being said, I just verified that this patch works. |
Yeah. I kind of guessed that because I noticed the errors started to occur after an update. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am trying to merge a few chosen pull requests into a fork but the libpit commit seems to break compiling on linux and windows. I don't really know c++, cmake or the compilation process and there cannot say anything about why exactly it is failing. Maybe you can know something about this? See this log for reference.
@@ -1,7 +1,7 @@ | |||
cmake_minimum_required(VERSION 2.8.4) | |||
project(libpit) | |||
|
|||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") | |||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Dnullptr=NULL") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to break compilation on linux and windows according to the newly introduced github action
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using the changes from e.foundation is cleaner than the changes suggested here, since they don't break compilation for other platforms. This works and compiles well on my fork:
else(NOT MINGW) | ||
set(CMAKE_EXE_LINKER_FLAGS "-lobjc -framework IOKit -framework CoreFoundation") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This also breaks compilation on linux. I have tried else((NOT MINGW) AND (NOT ${CMAKE_SYSTEM_NAME} MATCHES "Linux"))
but it appears to make no difference: compilation still fails on linux.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using the changes from e.foundation is cleaner than the changes suggested here, since they don't break compilation for other platforms. This works and compiles well on my fork:
These two commits will allow Heimdall to compile successfully on macOS 10.13.4. I have tested this. One of the commits is from @brainstorm. The other is my own.