@@ -138,6 +138,210 @@ ifeq ($(CONFIG_EDK2_DISABLE_TPM),y)
138138BUILD_STR += -D TPM_ENABLE=FALSE
139139endif
140140
141+ #
142+ # The Dasharo repository has the following additional options:
143+ #
144+
145+ # ABOVE_4G_MEMORY = TRUE
146+ ifneq ($(CONFIG_EDK2_ABOVE_4G_MEMORY ) ,y)
147+ BUILD_STR += -D ABOVE_4G_MEMORY=FALSE
148+ endif
149+ # PcdSerialRedirectionDefaultState = FALSE
150+ ifeq ($(CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION_DEFAULT_ENABLE ) ,y)
151+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdSerialRedirectionDefaultState=TRUE
152+ endif
153+ # SERIAL_TERMINAL = FALSE
154+ ifeq ($(CONFIG_EDK2_SERIAL_SUPPORT ) ,y)
155+ BUILD_STR += -D DISABLE_SERIAL_TERMINAL=TRUE
156+ ifeq ($(CONFIG_EDK2_HAVE_2ND_UART ) ,y)
157+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdHave2ndUart=TRUE
158+ ifeq ($(CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION2_DEFAULT_ENABLE ) ,y)
159+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdSerialRedirection2DefaultState=TRUE
160+ endif
161+ endif # CONFIG_EDK2_HAVE_2ND_UART
162+ endif # SERIAL_TERMINAL
163+ # PS2_KEYBOARD_ENABLE = FALSE
164+ ifeq ($(CONFIG_EDK2_PS2_SUPPORT ) ,y)
165+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowPs2Option=TRUE
166+ # SKIP_PS2_DETECT = FALSE
167+ ifeq ($(CONFIG_EDK2_SKIP_PS2_DETECT ) ,y)
168+ BUILD_STR += --pcd gUefiPayloadPkgTokenSpaceGuid.PcdSkipPs2Detect=TRUE
169+ endif # SKIP_PS2_DETECT
170+ else
171+ BUILD_STR += --pcd gUefiPayloadPkgTokenSpaceGuid.PcdSkipPs2Detect=TRUE
172+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowPs2Option=FALSE
173+ endif # PS2_KEYBOARD_ENABLE
174+ # SYSTEM76_EC_LOGGING = FALSE
175+ ifeq ($(CONFIG_EDK2_SYSTEM76_EC_LOGGING ) ,y)
176+ BUILD_STR += -D SYSTEM76_EC_LOGGING=TRUE
177+ endif
178+ # NETWORK_IPXE = FALSE
179+ ifeq ($(CONFIG_EDK2_IPXE ) ,y)
180+ BUILD_STR += -D NETWORK_IPXE=TRUE
181+ BUILD_STR += --pcd gUefiPayloadPkgTokenSpaceGuid.PcdiPXEOptionName=L"$(CONFIG_EDK2_IPXE_OPTION_NAME ) "
182+ endif
183+ # SECURE_BOOT_DEFAULT_ENABLE = TRUE
184+ ifneq ($(CONFIG_EDK2_SECURE_BOOT_DEFAULT_ENABLE ) ,y)
185+ BUILD_STR += -D SECURE_BOOT_DEFAULT_ENABLE=FALSE
186+ endif
187+ # SATA_PASSWORD_ENABLE = TRUE
188+ ifeq ($(CONFIG_EDK2_SATA_PASSWORD ) ,y)
189+ BUILD_STR += -D SATA_PASSWORD_ENABLE=TRUE
190+ endif
191+ # OPAL_PASSWORD_ENABLE = TRUE
192+ ifeq ($(CONFIG_EDK2_OPAL_PASSWORD ) ,y)
193+ BUILD_STR += -D OPAL_PASSWORD_ENABLE=TRUE
194+ endif
195+ # SETUP_PASSWORD_ENABLE = FALSE
196+ ifeq ($(CONFIG_EDK2_SETUP_PASSWORD ) ,y)
197+ BUILD_STR += -D SETUP_PASSWORD_ENABLE=TRUE
198+ endif
199+ # NETWORK_LAN_ROM = FALSE
200+ ifneq ($(CONFIG_EDK2_LAN_ROM_DRIVER ) ,)
201+ BUILD_STR += -D NETWORK_LAN_ROM=TRUE
202+ endif
203+ # DISABLE_MTRR_PROGRAMMING = TRUE
204+ ifneq ($(CONFIG_EDK2_DISABLE_MTRR_PROGRAMMING ) ,y)
205+ BUILD_STR += -D DISABLE_MTRR_PROGRAMMING=FALSE
206+ endif
207+ # IOMMU_ENABLE = FALSE
208+ ifeq ($(CONFIG_IOMMU_ENABLE ) ,y)
209+ BUILD_STR += -D IOMMU_ENABLE=TRUE
210+ endif
211+ # DASHARO_SYSTEM_FEATURES = FALSE
212+ ifeq ($(CONFIG_EDK2_DASHARO_SYSTEM_FEATURES ) ,y)
213+ BUILD_STR += -D DASHARO_SYSTEM_FEATURES_ENABLE=TRUE
214+ endif
215+ # DASHARO_SECURITY_OPTIONS = FALSE
216+ ifeq ($(CONFIG_EDK2_DASHARO_SECURITY_OPTIONS ) ,y)
217+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowSecurityMenu=TRUE
218+ endif
219+ # DASHARO_INTEL_ME_OPTIONS = FALSE
220+ ifeq ($(CONFIG_EDK2_DASHARO_INTEL_ME_OPTIONS ) ,y)
221+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowIntelMeMenu=TRUE
222+ endif
223+ # DASHARO_NETWORK_CONFIG = FALSE
224+ ifeq ($(CONFIG_EDK2_DASHARO_NETWORK_CONFIG ) ,y)
225+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowNetworkMenu=TRUE
226+ endif
227+ # DASHARO_USB_CONFIG = FALSE
228+ ifeq ($(CONFIG_EDK2_DASHARO_USB_CONFIG ) ,y)
229+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowUsbMenu=TRUE
230+ endif
231+ # DASHARO_CHIPSET_CONFIG = FALSE
232+ ifeq ($(CONFIG_EDK2_DASHARO_CHIPSET_CONFIG ) ,y)
233+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowChipsetMenu=TRUE
234+ endif
235+ # Always set the default power failure state to some value
236+ ifeq ($(CONFIG_HAVE_POWER_STATE_AFTER_FAILURE ) ,y)
237+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdDefaultPowerFailureState=$(CONFIG_MAINBOARD_POWER_FAILURE_STATE )
238+ else
239+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdDefaultPowerFailureState=0
240+ endif
241+ # DASHARO_POWER_CONFIG = FALSE
242+ ifeq ($(CONFIG_EDK2_DASHARO_POWER_CONFIG ) ,y)
243+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowPowerMenu=TRUE
244+
245+ ifneq ($(CONFIG_EDK2_SLEEP_TYPE_OPTION ) ,y)
246+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdPowerMenuShowSleepType=FALSE
247+ endif # CONFIG_EDK2_SLEEP_TYPE_OPTION
248+
249+ ifeq ($(CONFIG_EDK2_FAN_CURVE_OPTION ) ,y)
250+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdPowerMenuShowFanCurve=TRUE
251+ endif # CONFIG_EDK2_FAN_CURVE_OPTION
252+
253+ ifeq ($(CONFIG_EDK2_BATTERY_CONFIG_OPTION ) ,y)
254+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdPowerMenuShowBatteryThresholds=TRUE
255+ endif
256+
257+ endif # CONFIG_EDK2_DASHARO_POWER_CONFIG
258+ # DASHARO_PCI_CONFIG = FALSE
259+ ifeq ($(CONFIG_EDK2_DASHARO_PCI_CONFIG ) ,y)
260+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowPciMenu=TRUE
261+ endif
262+ # DASHARO_MEMORY_CONFIG = FALSE
263+ ifeq ($(CONFIG_EDK2_DASHARO_MEMORY_CONFIG ) ,y)
264+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowMemoryMenu=TRUE
265+ endif
266+ # DASHARO_NETWORK_BOOT_DEFAULT_ENABLE = FALSE
267+ ifeq ($(CONFIG_EDK2_DASHARO_NETWORK_BOOT_DEFAULT_ENABLE ) ,y)
268+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdDefaultNetworkBootEnable=TRUE
269+ endif
270+ ifeq ($(CONFIG_EDK2_DASHARO_OC_WDT_ENABLE ) ,y)
271+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowOcWdtOptions=TRUE
272+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdOcWdtTimeoutDefault=$(CONFIG_EDK2_DASHARO_OC_WDT_TIMEOUT )
273+ endif
274+ # PCIEXP_SUPPORT_RESIZABLE_BARS = FALSE
275+ ifeq ($(CONFIG_PCIEXP_SUPPORT_RESIZABLE_BARS ) ,y)
276+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdPciMenuShowResizeableBars=TRUE
277+ endif
278+ # BATTERY_CHECK = FALSE
279+ ifeq ($(CONFIG_EDK2_ENABLE_BATTERY_CHECK ) ,y)
280+ BUILD_STR += -D BATTERY_CHECK=TRUE
281+ endif
282+ # LOAD_OPTION_ROMS = TRUE
283+ ifeq ($(CONFIG_EDK2_DISABLE_OPTION_ROMS ) ,y)
284+ BUILD_STR += -D LOAD_OPTION_ROMS=FALSE
285+ endif
286+ # PRINT_SOL_STRINGS = FALSE
287+ ifeq ($(CONFIG_EDK2_PRINT_SOL_STRINGS ) ,y)
288+ BUILD_STR += --pcd gUefiPayloadPkgTokenSpaceGuid.PcdPrintSolStrings=TRUE
289+ endif
290+ # CREATE_PREINSTALLED_BOOT_OPTIONS = FALSE
291+ ifeq ($(CONFIG_EDK2_CREATE_PREINSTALLED_BOOT_OPTIONS ) ,y)
292+ BUILD_STR += --pcd gEfiMdeModulePkgTokenSpaceGuid.PcdCreatePreInstalledBootOptions=TRUE
293+ endif
294+ # SHOW_CAMERA_OPTION = FALSE
295+ ifeq ($(CONFIG_EDK2_SHOW_CAMERA_OPTION ) ,y)
296+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdSecurityShowCameraOption=TRUE
297+ endif
298+ # SHOW_WIFI_BT_OPTION = FALSE
299+ ifeq ($(CONFIG_EDK2_SHOW_WIFI_BT_OPTION ) ,y)
300+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdSecurityShowWiFiBtOption=TRUE
301+ endif
302+ # PERFORMANCE_MEASUREMENT_ENABLE = FALSE
303+ ifeq ($(CONFIG_EDK2_PERFORMANCE_MEASUREMENT_ENABLE ) ,y)
304+ BUILD_STR += -D PERFORMANCE_MEASUREMENT_ENABLE=TRUE
305+ endif
306+ ifneq ($(CONFIG_HAVE_INTEL_ME_HAP ) ,y)
307+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdIntelMeHapAvailable=FALSE
308+ endif
309+ ifneq ($(CONFIG_INTEL_ME_DEFAULT_STATE ) ,)
310+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdIntelMeDefaultState=$(CONFIG_INTEL_ME_DEFAULT_STATE )
311+ endif
312+ # RAM_DISK_ENABLE = FALSE
313+ ifeq ($(CONFIG_EDK2_RAM_DISK_ENABLE ) ,y)
314+ BUILD_STR += -D RAM_DISK_ENABLE=TRUE
315+ endif
316+ # APU_CONFIG_ENABLE = FALSE
317+ ifeq ($(CONFIG_VENDOR_PCENGINES ) ,y)
318+ BUILD_STR += -D APU_CONFIG_ENABLE=TRUE
319+ endif
320+
321+ BUILD_STR += -D BOOT_MENU_KEY=$(CONFIG_EDK2_BOOT_MENU_KEY )
322+ BUILD_STR += -D SETUP_MENU_KEY=$(CONFIG_EDK2_SETUP_MENU_KEY )
323+
324+ # PcdShowLockBios = FALSE
325+ ifeq ($(CONFIG_EDK2_ENABLE_BIOS_LOCK ) ,y)
326+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowLockBios=TRUE
327+ endif
328+ # PcdShowSmmBwp = FALSE
329+ ifeq ($(CONFIG_EDK2_ENABLE_SMM_BWP ) ,y)
330+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowSmmBwp=TRUE
331+ endif
332+ # PcdSleepTypeDefaultS3 = FALSE
333+ ifeq ($(CONFIG_EDK2_S3_SLEEP_DEFAULT ) ,y)
334+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdSleepTypeDefaultS3=TRUE
335+ endif
336+ # PcdShowFum = TRUE
337+ ifneq ($(CONFIG_EDK2_ENABLE_FUM ) ,y)
338+ BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowFum=FALSE
339+ endif
340+ # UART_ON_SUPERIO = FALSE
341+ ifeq ($(CONFIG_EDK2_SERIAL_ON_SUPERIO ) ,y)
342+ BUILD_STR += -D UART_ON_SUPERIO=TRUE
343+ endif
344+
141345endif
142346
143347#
@@ -184,7 +388,8 @@ $(EDK2_PATH): $(WORKSPACE)
184388 git clone --recurse-submodules $(CONFIG_EDK2_REPOSITORY ) $(EDK2_PATH ) -j5; \
185389 fi
186390 cd $(EDK2_PATH ) ; \
187- git checkout MdeModulePkg/Logo/Logo.bmp > /dev/null 2>&1 || true ; \
391+ git reset --hard HEAD > /dev/null 2>&1 || true ; \
392+ git clean -df > /dev/null 2>&1 || true ; \
188393 if [ -e UefiPayloadPkg/ShimLayer/UniversalPayload.o ]; then \
189394 rm UefiPayloadPkg/ShimLayer/UniversalPayload.o; \
190395 fi ; \
@@ -206,10 +411,10 @@ $(EDK2_PATH): $(WORKSPACE)
206411logo : $(EDK2_PATH )
207412 case " $( CONFIG_EDK2_BOOTSPLASH_FILE) " in \
208413 " " ) ;; \
209- /* ) convert -background None $(CONFIG_EDK2_BOOTSPLASH_FILE ) \
210- BMP3: $(EDK2_PATH ) /MdeModulePkg/Logo/Logo.bmp;; \
211- * ) convert -background None $(top ) /$(CONFIG_EDK2_BOOTSPLASH_FILE ) \
212- BMP3: $(EDK2_PATH ) /MdeModulePkg/Logo/Logo.bmp;; \
414+ /* ) cp $(CONFIG_EDK2_BOOTSPLASH_FILE ) \
415+ $(EDK2_PATH ) /MdeModulePkg/Logo/Logo.bmp;; \
416+ * ) cp $(top ) /$(CONFIG_EDK2_BOOTSPLASH_FILE ) \
417+ $(EDK2_PATH ) /MdeModulePkg/Logo/Logo.bmp;; \
213418 esac \
214419
215420gop_driver :
@@ -219,6 +424,25 @@ gop_driver:
219424 cp $(top ) /$(CONFIG_INTEL_GMA_VBT_FILE ) $(EDK2_PATH ) /UefiPayloadPkg/vbt.bin; \
220425 fi ; \
221426
427+ lan_rom : $(EDK2_PATH )
428+ case " $( CONFIG_EDK2_LAN_ROM_DRIVER) " in \
429+ " " ) ;; \
430+ /* ) mkdir -p $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/; \
431+ cp $(CONFIG_EDK2_LAN_ROM_DRIVER ) \
432+ $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/LanRom.efi;; \
433+ * ) mkdir -p $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/; \
434+ cp $(top ) /$(CONFIG_EDK2_LAN_ROM_DRIVER ) \
435+ $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/LanRom.efi;; \
436+ esac \
437+
438+ ipxe_rom : $(EDK2_PATH )
439+ if [ " $( CONFIG_EDK2_IPXE) " == " y" ]; then \
440+ echo " Including externally built iPXE" ; \
441+ mkdir -p $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/; \
442+ cp $(top ) /payloads/external/iPXE/ipxe/ipxe.rom \
443+ $(EDK2_PATH ) /UefiPayloadPkg/NetworkDrivers/ipxe.efi; \
444+ fi \
445+
222446checktools :
223447 echo -n " EDK2: Checking uuid-dev:"
224448 echo " #include <uuid/uuid.h>" > libtest.c
@@ -230,15 +454,6 @@ checktools:
230454 echo -n " EDK2: Checking nasm:"
231455 type nasm > /dev/null 2>&1 && echo " Found!" || \
232456 ( echo " Not found!" ; echo " ERROR: Please install nasm." ; exit 1 )
233- echo -n " EDK2: Checking imagemagick:"
234- -convert -size 1x1 xc: test.png & > /dev/null;
235- if [ -f test.png ]; then \
236- rm test.png && echo " Found!" ; \
237- else \
238- echo " Not found!" ; \
239- echo " ERROR: Please install imagemagick" ; \
240- exit 1; \
241- fi
242457
243458print :
244459 echo " ##### $( project_name) Build Summary #####"
@@ -256,7 +471,7 @@ print:
256471 -e ' s/s /Build: Silent/' \
257472 -e ' s/t /Toolchain: /'
258473
259- prep : $(EDK2_PATH ) $(EDK2_PLATFORMS_PATH ) clean checktools logo gop_driver
474+ prep : $(EDK2_PATH ) $(EDK2_PLATFORMS_PATH ) clean checktools logo gop_driver lan_rom ipxe_rom
260475 cd $(WORKSPACE ) ; \
261476 source $(EDK2_PATH ) /edksetup.sh; \
262477 unset CC; $(MAKE ) -C $(EDK2_PATH ) /BaseTools 2>&1 ; \
0 commit comments