Jump to content
Micky1979

Build_Clover.command, another Script to build standard Clover (or customized)

2,126 posts in this topic

Recommended Posts

Advertisement

That doesn't even make sense as a change. sprintf is a standardized function and %llx means long long. Since that is the compiler implementation it has special format specifier checks. No idea why that change was made unless they are explicitly disabling C99 support for GCC when compiling. Ironically, MVSC does not use C99 by default but %llx is always implemented... lol.

Share this post


Link to post
Share on other sites

That doesn't even make sense as a change. sprintf is a standardized function and %llx means long long. Since that is the compiler implementation it has special format specifier checks. No idea why that change was made unless they are explicitly disabling C99 support for GCC when compiling. Ironically, MVSC does not use C99 by default but %llx is always implemented... lol.

That file is brand new, introduced in this commit. Maybe the commit's author hasn't ever heard of any other toolchains/OSes/whatever hahaha... Even so, Xcode hardly could fall into the "GNU C" category as it's the Apple's proprietary toolchain. In term of "GNU C support", that's different story.

Share this post


Link to post
Share on other sites

That file is brand new, introduced in this commit. Maybe the commit's author hasn't ever heard of any other toolchains/OSes/whatever hahaha... Even so, Xcode hardly could fall into the "GNU C" category as it's the Apple's proprietary toolchain. In term of "GNU C support", that's different story.

 

Depending on the Xcode version you might be using GCC, but it eventually switched to clang at some point, which actually has a less restrictive license and is open source and not made by apple. Clang is supposed to be 100% compatible with GCC, it's one of it's top tauted features because it's supposedly also faster. Clang also defines GCC predefined macros so this would affect anything built in Xcode. There is one reason and one reason only to make that change, building with GCC or clang and disabling C99 support. Otherwise, the variable is a UINT64 and every compiler has support for %llx if it supports C99 and some always do, like MSVC. It's just a bad commit, the macro should not be checking for GCC alone but also for C99 being disabled, then it would be the correct preprocessing.

 

EDIT: Like checking __STDC_VERSION__ < 199901L

EDIT2: Forgot Apple clang 4.0 is actually a fork of clang 3.1, so it's kinda made by apple but it's still licensed under BSD, so it might as well be owned by a child in africa because that's not a very broadly enforceable license.

Share this post


Link to post
Share on other sites

Here's the output of gcc -dM -E ./PcdValueCommon.c

In the Appe's clang that macro IS defined and even returns a value of 4.

 

Yes because it's saying its parsing compatible with GCC 4.2.1.

Share this post


Link to post
Share on other sites

Is there any reason on one of my hacks (Laptop) i have this option

8) Try Clover Configurator Pro.app

But on my other hack (Desktop) that option is not there.

Both machines are running v4.6.2

Share this post


Link to post
Share on other sites

Is there any reason on one of my hacks (Laptop) i have this option

8) Try Clover Configurator Pro.app

But on my other hack (Desktop) that option is not there.

Both machines are running v4.6.2

 

Are you sure in the machine (desktop) you have the app?

I mean if the "Clover Configurator Pro.app" is present than the option will be not displayed...

 

EDIT: or maybe in your settings the key SHOWCCP_ADVERTISE is set to NO

 

ErmaC

Share this post


Link to post
Share on other sites

Just a request for Build_Clover.command to include an option to build AptioMemoryFix and include AptioMemoryFix.efi in /drivers64UEFI.

At present, I manually build from terminal...

cd ~/src/edk2
git clone https://github.com/vit9696/AptioFixPkg.git
git clone https://github.com/CupertinoNet/CupertinoModulePkg
git clone https://github.com/CupertinoNet/EfiMiscPkg
git clone https://github.com/CupertinoNet/EfiPkg
export NASM_PREFIX="~/src/opt/local/bin/"
source edksetup.sh
make -C BaseTools
touch edk2.ready
build -a X64 -b RELEASE -t XCODE5 -p AptioFixPkg/AptioFixPkg.dsc

---> outputs binary files in ~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64.

 

Thanks to all the devs involved :)

Share this post


Link to post
Share on other sites

Hi

 

Clover r4382: I don't no why AptioMemoryFix and AptioInputFix can't be compile (add) with Build_Clover.command v4.6.2? 

 

Thanks

 

Share this post


Link to post
Share on other sites

Hi

 

Clover r4382: I don't no why AptioMemoryFix and AptioInputFix can't be compile (add) with Build_Clover.command v4.6.2? 

 

Thanks

They must be compiled with the same toolset

 

 

~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64.

Share this post


Link to post
Share on other sites

@Slice

 

Sorry but I dont understand what you say with ~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64.

 

I can compile AptioMemory and AptioInput with vit9696 tool files. ButI I thought to do it with Build_Clover since aptioMemory seems to be in Clover sources. Both files do not appear in Clover installer updater pkg.

 

 

Sorry for my bad english

Share this post


Link to post
Share on other sites

@Slice

 

Sorry but I dont understand what you say with ~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64.

 

I can compile AptioMemory and AptioInput with vit9696 tool files. ButI I thought to do it with Build_Clover since aptioMemory seems to be in Clover sources. Both files do not appear in Clover installer updater pkg.

 

 

Sorry for my bad english

vit9696 tool compile AptioFix with XCODE5 toolset.

Be sure you are using same toolset when you build Clover.

(I don't use Build_Clover.command v4.6.2 and don't know it).

 

For Clover release I have used XCODE8 toolset for both.

Share this post


Link to post
Share on other sites

Hi

 

Clover r4382: I don't no why AptioMemoryFix and AptioInputFix can't be compile (add) with Build_Clover.command v4.6.2? 

 

Thanks

 

The latest commits for AptioFixPkg (jan 17 2018) seem to only build with nasm v2.13.02 in /usr/local/bin.  If I use export NASM_PREFIX="~/src/opt/local/bin/", I now get a nasm build error during the build phase.

 

The following steps worked for me to fix the build...

1)  Delete the old ~/src/edk2/AptioFixPkg folder and reboot the computer.  Clean the edk2 build environment by running Build_Clover.command option 3 (Update Clover + force edk2 update), then exit with option 11.

2)  Install the attached nasm v2.13.02 in /usr/local/bin

sudo cp ~/Downloads/nasm /usr/local/bin/

3)  Then run the following commands to build AptioMemoryFix.efi again...

cd ~/src/edk2
git clone https://github.com/vit9696/AptioFixPkg.git
git clone https://github.com/CupertinoNet/CupertinoModulePkg
git clone https://github.com/CupertinoNet/EfiMiscPkg
git clone https://github.com/CupertinoNet/EfiPkg
source edksetup.sh
make -C BaseTools
touch edk2.ready
build -a X64 -b RELEASE -t XCODE5 -p AptioFixPkg/AptioFixPkg.dsc

---> output binary files in ~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64

 

4)  Replace OsxAptioFix3Drv-64.efi in ~/src/edk2/Clover/CloverPackage/CloverV2/drivers-Off/drivers64UEFI with AptioMemoryFix.efi.

 

Slightly modified @vit9696's build script (attached Build_AptioFixPkg.sh) so it uses existing ~/src/edk2  ---> output to ~/src/edk2/Clover/CloverPackage/CloverV2/drivers-Off/drivers64UEFI.

 

EditBuild_Clover.command v4.6.4 now automatically compiles AptioMemoryFix.efi when using XCODE5 toolchain.  Thanks @Micky1979 and @Vit9696 :).

nasm.zip

Compiled AptioFixPkg.zip

Build_AptioFixPkg.sh.zip

Share this post


Link to post
Share on other sites

The latest commits for AptioFixPkg (jan 17 2018) seem to only build with nasm v2.13.02 in /usr/local/bin.  If I use export NASM_PREFIX="~/src/opt/local/bin/", I now get a nasm build error during the build phase.

 

The following steps worked for me to fix the build...

1)  Delete the old ~/src/edk2/AptioFixPkg folder and reboot the computer.  Clean the edk2 build environment by running Build_Clover.command option 3 (Update Clover + force edk2 update), then exit with option 11.

2)  Install the attached nasm v2.13.02 in /usr/local/bin

sudo cp ~/Downloads/nasm /usr/local/bin/

3)  Then run the following commands to build AptioMemoryFix.efi again...

cd ~/src/edk2
git clone https://github.com/vit9696/AptioFixPkg.git
git clone https://github.com/CupertinoNet/CupertinoModulePkg
git clone https://github.com/CupertinoNet/EfiMiscPkg
git clone https://github.com/CupertinoNet/EfiPkg
source edksetup.sh
make -C BaseTools
touch edk2.ready
build -a X64 -b RELEASE -t XCODE5 -p AptioFixPkg/AptioFixPkg.dsc

---> output binary files in ~/src/edk2/Build/AptioFixPkg/RELEASE_XCODE5/X64

 

4)  Replace OsxAptioFix3Drv-64.efi in ~/src/edk2/Clover/CloverPackage/CloverV2/drivers-Off/drivers64UEFI with AptioMemoryFix.efi.

Or you could just use the script I made that does everything automated for you.

AptioMemory_Builder.sh.zip

Share this post


Link to post
Share on other sites

I made clover package r4390. I already have OsxFatbinary-64 until install r4390. After install r4390, Osxfatbinary-64 was removed automatically. I didn't touch any additional option to install extra binary. Old clover package is no problem. Just happen on latest clover package.

 

Thanks in advance

 

나의 LG-F800S 의 Tapatalk에서 보냄

Share this post


Link to post
Share on other sites

I made clover package r4390. I already have OsFatbinary-64 until install r4390. After install r4390, osfatbinary-64 was removed. I didn't touch any additional option to install extra binary. Old clover package is no problem. Just happen on latest clover package.

 

Thansk in advance

 

나의 LG-F800S 의 Tapatalk에서 보냄

OsxFatBinary.efi is optional now. It is needed only for systems previous to 10.8.

If you want to install it check the driver in Clover package.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By MaLd0n
      Install MacOS with Olarila Image, Step by Step, Install and Post Install  
      https://www.olarila.com/topic/5794-hackintosh-guide-install-macos-with-olarila-image-step-by-step-install-and-post-install-windows-or-mac/
          First... If you need DSDT edits for SkyLake, KabyLake or CoffeeLake... -Post your full Clover folder with original tables in Origin folder(Extract with F4 in Clover boot screen) -Post Ioreg, extract with Ioreg Explorer http://www.insanelymac.com/forum/index.php?app=core&module=attach&section=attach&attach_id=222606 -Run it, post files generated in your desktop http://www.insanelymac.com/forum/index.php?app=core&module=attach&section=attach&attach_id=222609  Installation   --Create a bootable copy of macOS Sierra Check out the link http://www.insanelymac.com/forum/files/file/559-flash-drive-maker/   --Create a bootable copy of macOS HighSierra Check out the link http://diskmakerx.com/   --Paste my EFI folder into EFI partition  EFI GA H110M-S2.zip     --Install Sierra/High Sierra and boot into system!   Post Installation   --Paste my EFI folder into EFI partition  EFI GA H110M-S2.zip     --Reboot and activate video!   -Nvidia WebDriver Sierra http://www.insanelymac.com/forum/topic/312525-nvidia-web-driver-updates-for-macos-sierra-update-07212017/ -Nvidia WebDriver High Sierra http://www.insanelymac.com/forum/topic/324195-nvidia-web-driver-updates-for-macos-high-sierra-update-10162017/ -Cuda http://www.insanelymac.com/forum/topic/302795-cuda-90214-is-out-update-10162017/   --DSDT My DSDT with Skylake patches DSDT.GA H110M-S2.zip   Patches -FIX ERRORS AND WARNINGS -HPET -SATA -DMAC -SLPB -DARWIN -LPC -XHCI -PLUGIN TYPE -HDAS to HDEF -HDEF -RTC -IRQs -SBUS -BUS1 -MCHC -ALS0 -SHUTDOWN -LAN -USBX -PMCR -EC -PNLF -HDMI   -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!   Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad and many, many, many others!   We're all here to have fun and learn from each other!   ENJOY!  
    • By STLVNUB
      Script file to clone Clover, Opencore (official and unofficial) repos
      Script will create link to itself in /usr/local/bin/bob
      Wouldn't hurt to check there are no "Bob"'s there, i "Hope" there isn't.
      Then you only need to type bob. and a parameter
      "n" for NDK repo, unofficial
      "a" for ACID repo, official
      "c" for CLOVER
      It also takes "all" for ALL, if your game
       
      Easier typing bob than.....usual stuff
      Enjoy
       
    • By TimothyF
      My PROBLEM: I followed the Plain Vanilla guide (https://hackintosh.gitbook.io/-r-hackintosh-vanilla-desktop-guide/) to a T in creating the OS X Catalina installer USB. I'm totally new to Hackintosh, and just want an Apple environment to Time Machine migrate my files and system from my ageing MacBook Pro. When I start to use the USB on the target PC (Dell Inspiron 3847 desktop), I ONLY see the Microsoft (which is the original OS, and on a SEPARATE Hard drive from where I want to install Mac OS), ZERO option for installing the OSX Catalina! Please SEE PICTURE link: https://imgur.com/a/FnLB2Q9   I'm a beginner, but I tried to google my problem. The answers were either incomplete, hard for me to understand and put into action, or were outdated and applied to older OSXs. I appreciate any help in diagnosing and solving this problem!   Clover USB specs OS installer used: Catalina (10.15) Clover revision: 5103 Kexts included: ATH9KFixup.kext AppleALC.kext Lilu.kext RealtekRTL8111.kext USBInjectAll.kext VirtualSMC.kext WhateverGreen.kext config.plist: see attached ------------------------------------------ Target Desktop specs: Dell Inspiron 3847 (64 bit) CPU: Intel Core i5-4460, 3.2 GHz, 4 cores Architecture: Haswell GPU: Intel HD 4600 Motherboard: Dell 088DT1 (version A01) Chipset: Intel H81 Install method: with USB, configured with Clover, 100% following Plain Vanilla guide for Desktops RAM: 12 GB, 2 slots Hard drive for installation: SATA HDD 4TB, by HGST LAN: RTL8111/8168/8411 WLAN: AR9565 (atheros) Audio: Realtek ALC661 (not 100% sure this is correct)   ------------------------------------ Attached:
      Screenshot of Clover installer not showing the Mac OSX option
      config.plist of my installer USB
      Clover_Install_Log.txt (not sure if this is relevant)   THANK YOU VERY MUCH!     config.plist
      Clover_Install_Log.txt
    • By Simon's InsaneMac
      Hi, I'm kind of lost when scrolling to Clover Configurator, so I decided to use an EFI from the web and just configure the most basic stuff. But that sadly didn't work, im always getting the attached screen IMG_0054.HEIC (and I don't know whether all the errors are listed, as I can't scroll). 
      Anyways I thought it'd be better to do a custom setup. Can anyone give me some help with what to choose in the settings? Here's my rig:
      i7 8700k
      Asus z370-G (Rog Strix)
      gtx 1060 6gb
      samsung ssd (SATA)
      WD hard drive
       
      Your help would be much appreciated!
    • By kylon
      A big thanks to wegface for teaching me a lot of things.
       
       
      Tested on Catalina 10.15.4 and Clover EFI 5104 (Catalina Patcher)
       
      Not Working:
      - realtek sd card reader (pm me if you have a fix)
       
      Notes:
      **CPU patches are disabled, if you are using a locked BIOS you must enable them**
       
      Clover EFI:
      - Install it in UEFI Mode and change your hdd partition table to GPT.
      - You will be able to install ANY OS in EFI mode, even if this pc does not support EFI at all! (No guide available for this)
       
      You will need:
      My unlocked BIOS (OPTIONAL) (here) Latest Clover config from CCE Bank (here) (asus k53sj-kylon) Rehabman Voodoo PS2 Controller (here) acidanthera AppleALC (here) acidanthera Lilu (here) acidanthera VirtualSMC (here) acidanthera SMCBatteryManager (here) acidanthera SMCLightSensor (here) acidanthera WhateverGreen (here) Mieze Realtek RTL8111 (here)
×