Closed rdrpenguin04 closed 3 years ago
I should also mention that I am using Ninja rather than Makefile; is this a Ninja-related issue?
I should also mention that I am using Ninja rather than Makefile; is this a Ninja-related issue?
No, this looks like a new flag introduced with Clang 11/12 and enabled by default. You should be able to get around it for now by adding -DCMAKE_C_FLAGS="-Wno-error=undef-prefix" -DCMAKE_CXX_FLAGS="-Wno-error=undef-prefix"
(you might need to play around with that, though; I haven't seen this flag before and I can't find it in Clang's docs), or, if that doesn't work, then try -DCMAKE_C_FLAGS="-DTARGET_OS_DRIVERKIT=0" -DCMAKE_CXX_FLAGS="-DTARGET_OS_DRIVERKIT=0"
.
Be warned, though: we test Darling to build with the latest released Clang (which ATM is Clang 10), so you might run into issues with Clang 12.
Okay, good to know! It seems to be building fine now; I'll update you if it doesn't.
This seems like an easy issue to fix, something like ifndef, define, endif. Let me know if you need anything else!
I was able to go forward with this error, just to fail a bit later with this error:
In file included from /tmp/yaourt-tmp-teras/aur-darling/src/darling/src/external/libdispatch/src/block.cpp:32:
In file included from /tmp/yaourt-tmp-teras/aur-darling/src/darling/src/external/libdispatch/src/internal.h:1086:
In file included from /tmp/yaourt-tmp-teras/aur-darling/src/darling/src/external/libdispatch/src/object_internal.h:472:
/tmp/yaourt-tmp-teras/aur-darling/src/darling/src/external/objc4/runtime/include/objc/runtime.h:1547:9: error: non-defining declaration of enumeration with a fixed underlying type is only permitted as a standalone declaration; missing list of enumerators? [-Welaborated-enum-base]
typedef OBJC_ENUM(uintptr_t, objc_AssociationPolicy) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/yaourt-tmp-teras/aur-darling/src/darling/src/external/objc4/runtime/include/objc/objc-api.h:221:44: note: expanded from macro 'OBJC_ENUM'
#define OBJC_ENUM(_type, _name) enum _name : _type _name; enum _name : _type
^~~~~~~
I tried to add the option -Welaborated-enum-base
but with no luck (as mentioned here)
same
That is a separate issue, I recommend reporting it as such.
I may submit a PR to fix this at some point, since that seems to be the way it'll get fixed.
Fixed in update-sources
, closing.
Reopening this until update-sources
merges.
Fixed in
update-sources
, closing.
Pardon my stupidity, but might you elaborate? I'm still getting error: 'TARGET_OS_DRIVERKIT' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
Pardon my stupidity, but might you elaborate?
update-sources
is another branch. You can use the follow commands to checkout that branch.
git checkout update-sources
git submodule update --init --recursive
git submodule update --init --recursive
found this as I was running make a few minutes ago, will let you know if it works.
git submodule update --init --recursive
found this as I was running make a few minutes ago, will let you know if it works.
deepin-screen-recorder_gnome-terminal-server_20210107013026.mp4
28% and progressing
git submodule update --init --recursive
found this as I was running make a few minutes ago, will let you know if it works. deepin-screen-recorder_gnome-terminal-server_20210107013026.mp4
28% and progressing
88%, it sure is taking time (samsung 2Tb nvme 960 pro, 20 cores, 64g DDR4) but so far so good
@CuriousTommy 4h but all ok. Thanks!
I should mention that this is a git build of Clang and of CMake; let me know if you want more precise version information.
Build Log Relevant section (omitted successful targets):
System Information What system are you building with?