D-an-W Posted September 5, 2019 Share Posted September 5, 2019 (edited) Not working here (Using a fresh install of the "standard" Build_Clover.command)... ================================================================================ Building Clover <-------------------------------------------------- ================================================================================ boot6 <-------------------------------------------------- TOOLCHAIN_DIR: /Users/dan/src/opt/local `-x64' is deprecated because Clover is 64 bit only. This message will be removed soon MTOC_PREFIX: /usr/local/bin/ NASM_PREFIX: /Users/dan/src/opt/local/bin/ NASM_VER: 2.14.02 Building from: /Users/dan/src/edk2 Running edk2 build for CloverX64 using the command: build -D NO_GRUB_DRIVERS_EMBEDDED --conf=/Users/dan/src/edk2/Conf -D USE_LOW_EBDA -p Clover/Clover.dsc -a X64 -b RELEASE -t XCODE8 -n 9 Build environment: Darwin-18.7.0-x86_64-i386-64bit Build start time: 16:32:40, Sep.05 2019 WORKSPACE = /Users/dan/src/edk2 EDK_TOOLS_PATH = /Users/dan/src/edk2/BaseTools CONF_PATH = /Users/dan/src/edk2/Conf Architecture(s) = X64 Build target = RELEASE Toolchain = XCODE8 Active Platform = /Users/dan/src/edk2/Clover/Clover.dsc Flash Image Definition = /Users/dan/src/edk2/Clover/Clover.fdf Processing meta-data . build.py... /Users/dan/src/edk2/Clover/Clover.dsc(107): error 000E: File/directory not found in workspace /Users/dan/src/edk2/NetworkPkg/Library/DxeNetLib/DxeNetLib.inf - Failed - Build end time: 16:32:42, Sep.05 2019 Build total time: 00:00:02 o_Ops, ./ebuild.sh exited with error(s), aborting.. Mac-mini:~ dan$ Edited September 5, 2019 by D-an-W Link to comment Share on other sites More sharing options...
vector sigma Posted September 5, 2019 Share Posted September 5, 2019 14 minutes ago, Matgen84 said: What is the difference between discard local change and stash local change? update overwriting any change you may have done vs keep your changes during an update.The second can lead in a request to resolve conflicts. 16 minutes ago, Matgen84 said: Where Opt and Tools folders aren't present in src/EDK2? Should be autogenerated, I'll try from scratch to see what happen. This is what actually I have: 17 minutes ago, Matgen84 said: Yes, I try your script: works fine except issue below. I can't make PKG I think the culprit is the .gitignore that ignore these files: # Translation files CloverUpdater.strings CloverPackage/CloverUpdater/src/*.lproj CloverPrefpane.strings CloverPackage/CloverPrefpane/src/*.lproj ..when should not. Not sure why Slice wanted ignore them entirely. The base ones (English.lproj or en.lproj) must be always present at least. The difference from me and you is that I have it. 20 minutes ago, Matgen84 said: The repo don't contain patches_edk2 folder, it's normal. Sure, you don't need anything else, nor edk2. It contains all you need. 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 5, 2019 Share Posted September 5, 2019 (edited) 1 hour ago, vector sigma said: update overwriting any change you may have done vs keep your changes during an update.The second can lead in a request to resolve conflicts. Should be autogenerated, I'll try from scratch to see what happen. This is what actually I have: I think the culprit is the .gitignore that ignore these files: # Translation files CloverUpdater.strings CloverPackage/CloverUpdater/src/*.lproj CloverPrefpane.strings CloverPackage/CloverPrefpane/src/*.lproj ..when should not. Not sure why Slice wanted ignore them entirely. The base ones (English.lproj or en.lproj) must be always present at least. The difference from me and you is that I have it. Sure, you don't need anything else, nor edk2. It contains all you need. Great job Why Option 6 to 9 don't work here... Maybe because there is no new commit. fatal: not a git repository (or any of the parent directories): .git logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. Edited September 5, 2019 by Matgen84 1 Link to comment Share on other sites More sharing options...
chris1111 Posted September 5, 2019 Share Posted September 5, 2019 (edited) I did my build clover with the GGC8 is what is needed because we use EDK2? tHATS verry long to Build GGC. Is the GGC still required ? ? ? Edited September 5, 2019 by chris1111 1 Link to comment Share on other sites More sharing options...
Zenith432 Posted September 5, 2019 Share Posted September 5, 2019 41 minutes ago, chris1111 said: I did my build clover with the GGC8 is what is needed because we use EDK2? tHATS verry long to Build GGC. Is the GGC still required ? ? ? Of course not. On macOS the default toolchain is XCODE8. You need mtoc which can be built with buildmtoc.sh and place it in one of the places ebuild.sh looks for it. You need to have Xcode.app installed and xcode-select set to point to it. I have gcc 9.2 working, maybe I'll check it in later this week. 2 Link to comment Share on other sites More sharing options...
vector sigma Posted September 5, 2019 Share Posted September 5, 2019 1 hour ago, Matgen84 said: Great job Why Option 6 to 9 don't work here... Maybe because there is no new commit. fatal: not a git repository (or any of the parent directories): .git logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. Could you, kindly, try a fresh repository without even the opt directory to see if all is fine now? Just open buildme and select: 4) build all on the fresh souce. thanks in advance Link to comment Share on other sites More sharing options...
vector sigma Posted September 5, 2019 Share Posted September 5, 2019 (edited) 3 hours ago, D-an-W said: Not working here (Using a fresh install of the "standard" Build_Clover.command)... Hi, not sure Build_Clover.command can build latest source, but if you want you can try the new Clover on github by using the attached wrapper Clover.zip Edited September 5, 2019 by vector sigma corrected 2 Link to comment Share on other sites More sharing options...
D-an-W Posted September 5, 2019 Share Posted September 5, 2019 Thanks for the file, it didn't complete the build however... Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64] [CC] DivU64x32 [CC] SetMem [CC] InternalGetSpinLockProperties "/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii /bin/sh: /nasm: No such file or directory make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127 build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic] build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib] build.py... : error F002: Failed to build module /Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 21:18:46, Sep.05 2019 Build total time: 00:00:13 Dans-Mac-mini:~ dan$ 1 Link to comment Share on other sites More sharing options...
STLVNUB Posted September 5, 2019 Share Posted September 5, 2019 Looks like it can't find nasm, is it installed? More than likely not set properly in script. 1 Link to comment Share on other sites More sharing options...
vector sigma Posted September 5, 2019 Share Posted September 5, 2019 2 hours ago, D-an-W said: Thanks for the file, it didn't complete the build however... Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64] [CC] DivU64x32 [CC] SetMem [CC] InternalGetSpinLockProperties "/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii /bin/sh: /nasm: No such file or directory make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127 build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic] build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib] build.py... : error F002: Failed to build module /Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 21:18:46, Sep.05 2019 Build total time: 00:00:13 Dans-Mac-mini:~ dan$ 23 minutes ago, STLVNUB said: Looks like it can't find nasm, is it installed? More than likely not set properly in script. Yes it is a bug, the last. I made the buildme script to find the first worthy nasm to build Clover, but in ebuild.sh there's something apparently weird because looks for hard coded paths. Not sure why, but /opt/local/bin/nasm for example is preferred. Ok, the one shipped with macOS is bad, so I can assume someone wanted this for convenience. /bin/sh: /nasm: No such file or directory yep, no nasm at "/", that's the problem. Tomorow I'll fix it. 1 1 Link to comment Share on other sites More sharing options...
LockDown Posted September 6, 2019 Share Posted September 6, 2019 is it still ok to use sf and compile for now? Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2019 Share Posted September 6, 2019 33 minutes ago, ellaosx said: is it still ok to use sf and compile for now? Up to now revision 5071 on sf.net is the same as latest on github. 1 Link to comment Share on other sites More sharing options...
STLVNUB Posted September 6, 2019 Share Posted September 6, 2019 32 minutes ago, Slice said: Up to now revision 5071 on sf.net is the same as latest on github. There was talk y e a r s ago, glad to see you guys finally saw the light. Now to top it off, how about getting rid of patches and adjusting Clover Go with the flow. 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 6, 2019 Share Posted September 6, 2019 9 hours ago, vector sigma said: Could you, kindly, try a fresh repository without even the opt directory to see if all is fine now? Just open buildme and select: 4) build all on the fresh souce. thanks in advance I've got always some issue. I don't understand why. Terminal file in attachment Thanks Test on Terminal Link to comment Share on other sites More sharing options...
fusion71au Posted September 6, 2019 Share Posted September 6, 2019 1 hour ago, ellaosx said: is it still ok to use sf and compile for now? Yes, but need to upgrade edk2 to latest stable edk2-stable201908. For those still wanting to compile Clover from SourceForge via svn 1. Delete old ~/src/edk2 folder (but keep existing ~/src/opt and ~/src/tools folders) 2. Download latest stable edk2-stable201908.zip & extract into ~/src, renaming it edk2 3. Open terminal and type the following lines, followed by <Enter> to prepare build tools cd ~/src/edk2 svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover source edksetup.sh cp -R Clover/Patches_for_EDK2/* ./ make -C BaseTools 4. Open terminal and type the following lines, followed by <Enter> to build Clover cd ~/edk2/Clover ebuild.sh -fr -D NO_GRUB_DRIVERS_EMBEDDED //builds Clover with boot6 ebuild.sh -fr -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED //builds Clover with boot7 5. Open terminal and type the following lines, followed by <Enter> to build Clover installer pkg and/or iso cd CloverPackage ./makepkg make iso If you want to build from scratch from CloverHackyColor GIT 1. Open terminal and type the following lines, followed by <Enter> to download Clover source files. Note: no need to download edk2 ... mkdir ~/src // if src folder does not already exist in user's home folder cd ~/src git clone https://github.com/CloverHackyColor/CloverBootloader.git 2. Install/build nasm cd CloverBootloader ./buildnasm.sh 3. Run @vector sigma's buildme script... ./buildme // Select option 4 (build all) 1 2 Link to comment Share on other sites More sharing options...
LockDown Posted September 6, 2019 Share Posted September 6, 2019 1 hour ago, fusion71au said: 2. Install/build nasm cd CloverBootloader ./buildnasm.sh 3. Run @vector sigma's buildme script... ./buildme // Select option 4 (build all) why the need of #2, vector's builme script wont do it automatically? Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2019 Share Posted September 6, 2019 Working with GitHub is simpler. About sf.net I will propose the follow sequence 1. cd ~ 2. mkdir src 3. cd src 4. git clone https://github.com/CloverHackyColor/edk2.git --depth 1 SIC! There is already patched EDK2. depth 1 make your download times smaller. 5. cd edk2 6. make -C BaseTools/Source/C 7. svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover 8. source edksetup.sh 9. cd Clover 10. ./buildnasm.sh 11. ./buildgettext.sh 12. ./buildmtoc.sh 13. ./ebuild.sh -fr -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED if you want BIOS_BLOCK_IO legacy boot7 14. ./ebuild.sh -fr -D NO_GRUB_DRIVERS_EMBEDDED 15. cd CloverPackage 16 ./makepkg 17. ./makeiso if you want 2 1 Link to comment Share on other sites More sharing options...
fusion71au Posted September 6, 2019 Share Posted September 6, 2019 6 hours ago, vector sigma said: Yes it is a bug, the last. I made the buildme script to find the first worthy nasm to build Clover, but in ebuild.sh there's something apparently weird because looks for hard coded paths. Not sure why, but /opt/local/bin/nasm for example is preferred. Ok, the one shipped with macOS is bad, so I can assume someone wanted this for convenience. /bin/sh: /nasm: No such file or directory yep, no nasm at "/", that's the problem. Tomorow I'll fix it. 18 minutes ago, ellaosx said: why the need of #2, vector's builme script wont do it automatically? As @vector sigma mentioned in the post above yours, there is a bug/incompatibility in the buildme script at the moment ---> nasm not present error thrown up. This should be fixed soon. I found in my situation that running the buildnasm script before the buildme script worked to compile Clover successfully . PS Anyone notice "invalid option 5" when selecting to update Clover (discard local changes)? buildme Beta, Clover v2.5k r5072 (SHA: ac97cf5) Remote SHA: ac97cf5 1) build Clover 2) make pkg 3) make iso 4) build all 5) update Clover (discard local changes) 6) update Clover (stash local changes) 7) status 8) show diff 9) quit Please enter your choice: 5 invalid option 5 1 1 Link to comment Share on other sites More sharing options...
vector sigma Posted September 6, 2019 Share Posted September 6, 2019 7 hours ago, Matgen84 said: I've got always some issue. I don't understand why. Terminal file in attachment Thanks Test on Terminal 4 hours ago, fusion71au said: As @vector sigma mentioned in the post above yours, there is a bug/incompatibility in the buildme script at the moment ---> nasm not present error thrown up. This should be fixed soon. I found in my situation that running the buildnasm script before the buildme script worked to compile Clover successfully . 14 hours ago, D-an-W said: Thanks for the file, it didn't complete the build however... Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64] [CC] DivU64x32 [CC] SetMem [CC] InternalGetSpinLockProperties "/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii /bin/sh: /nasm: No such file or directory make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127 build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic] build.py... : error 7000: Failed to execute command make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib] build.py... : error F002: Failed to build module /Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 21:18:46, Sep.05 2019 Build total time: 00:00:13 Dans-Mac-mini:~ dan$ fixed! (at github) 5 Link to comment Share on other sites More sharing options...
vector sigma Posted September 6, 2019 Share Posted September 6, 2019 5 hours ago, Slice said: Working with GitHub is simpler. About sf.net I will propose the follow sequence 1. cd ~ 2. mkdir src 3. cd src 4. git clone https://github.com/CloverHackyColor/edk2.git --depth 1 SIC! There is already patched EDK2. depth 1 make your download times smaller. 5. cd edk2 6. make -C BaseTools/Source/C 7. svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover 8. source edksetup.sh 9. cd Clover 10. ./buildnasm.sh 11. ./buildgettext.sh 12. ./buildmtoc.sh 13. ./ebuild.sh -fr -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED if you want BIOS_BLOCK_IO legacy boot7 14. ./ebuild.sh -fr -D NO_GRUB_DRIVERS_EMBEDDED 15. cd CloverPackage 16 ./makepkg 17. ./makeiso if you want I can propose to leave Clover outside edk2? 1) is easy using PAKAGES_PATH, patched module will leave separately in the workspace 2) your edk2 repository will be always untouched 3) Clover from git and Clover from svn can coexist in the same src dir 1 Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2019 Share Posted September 6, 2019 2 minutes ago, vector sigma said: I can propose to leave Clover outside edk2? 1) is easy using PAKAGES_PATH, patched module will leave separately in the workspace 2) your edk2 repository will be always untouched 3) Clover from git and Clover from svn can coexist in the same src dir Mostly all issues with git-Clover already resolved so I will leave it in the new state. I may propose to include sf-Clover into folder https://github.com/CloverHackyColor/edk2 and make git-svn synchronization between sf and github. I just don't know how to do this. Link to comment Share on other sites More sharing options...
vector sigma Posted September 6, 2019 Share Posted September 6, 2019 4 minutes ago, Slice said: and make git-svn synchronization between sf and github. I just don't know how to do this. no idea, never done... Link to comment Share on other sites More sharing options...
Matgen84 Posted September 6, 2019 Share Posted September 6, 2019 16 minutes ago, Slice said: Mostly all issues with git-Clover already resolved so I will leave it in the new state. I may propose to include sf-Clover into folder https://github.com/CloverHackyColor/edk2 and make git-svn synchronization between sf and github. I just don't know how to do this. 10 minutes ago, vector sigma said: no idea, never done... Hi @Slice @vector sigma Thanks for your great job. I found this: http://manpages.ubuntu.com/manpages/cosmic/man1/svn2git.1.html But I don't know if is interesting or a solution. svn2git - is a tiny utility for migrating projects from Subversion to Git while keeping the trunk, branches and tags where they should be. It uses git-svn to clone an svn repository and does some clean-up to make sure branches and tags are imported in a meaningful way, and that the code checked into master ends up being what's currently in your svn trunk rather than whichever svn branch your last commit was in. ... As of svn2git 2.0 there is a new feature to pull in the latest changes from SVN into your git repository created with svn2git. This is a one way sync, but allows you to use svn2git as a mirroring tool for your SVN repositories. 1 Link to comment Share on other sites More sharing options...
D-an-W Posted September 6, 2019 Share Posted September 6, 2019 @vector sigma thanks, compiled ok this time. As I have to uncomment a line before compiling can I confirm I should use Option 7 so I don't loose the change? 1 Link to comment Share on other sites More sharing options...
vector sigma Posted September 6, 2019 Share Posted September 6, 2019 (edited) 1 hour ago, D-an-W said: @vector sigma thanks, compiled ok this time. As I have to uncomment a line before compiling can I confirm I should use Option 7 so I don't loose the change? It should, but it is not guaranteed your change will not generate conflicts with the incoming update ...which you will then have to solve. Edited September 6, 2019 by vector sigma Link to comment Share on other sites More sharing options...
Recommended Posts