Change windows build to be less complicated and just do stuff

Fix some code that does not compile in later versions of visual studio
This commit is contained in:
apianti 2019-03-11 02:59:39 +00:00
parent 25668c1181
commit bf764235f0
24 changed files with 385 additions and 2682 deletions

View File

@ -1,30 +1,29 @@
BOOTSECTORS = boot0af boot0ss boot0md boot1h boot1h2 boot1f32 boot1f32alt boot1x boot1xalt
TEXTFILES = Description.txt Installation.txt
BOOTSECTOR_SRCS = $(addsuffix .s, $(BOOTSECTORS))
BOOTSECTOR_BINS = $(addprefix $(DESTDIR)/, $(BOOTSECTORS))
TEXTFILES_TARGET = $(addprefix $(DESTDIR)/, $(TEXTFILES))
ifeq ($(DESTDIR),)
$(error Variable DESTDIR must be defined !)
endif
ifdef NASM_PREFIX
NASM=$(NASM_PREFIX)nasm
else
NASM=nasm
endif
all: $(BOOTSECTOR_BINS) $(PBOOTSECTOR_BINS) $(TEXTFILES_TARGET)
$(BOOTSECTOR_BINS): boot0.s $(BOOTSECTOR_SRCS)
@echo "[NASM] $(@F).s -> $@"
@"$(NASM)" $(@F).s -o $@
$(TEXTFILES_TARGET): $(TEXTFILES)
@cp -v $(@F) $@
clean:
rm -f $(BOOTSECTOR_BINS) $(PBOOTSECTOR_BINS) $(TEXTFILES_TARGET) *~
# Dependencies for File: ú1ÀŽÐ¼ðÿûŽØŽÀV¾
BOOTSECTORS = boot0af boot0ss boot0md boot1h boot1h2 boot1f32 boot1f32alt boot1x boot1xalt
TEXTFILES = Description.txt Installation.txt
BOOTSECTOR_SRCS = $(addsuffix .s, $(BOOTSECTORS))
BOOTSECTOR_BINS = $(addprefix $(DESTDIR)/, $(BOOTSECTORS))
TEXTFILES_TARGET = $(addprefix $(DESTDIR)/, $(TEXTFILES))
ifeq ($(DESTDIR),)
$(error Variable DESTDIR must be defined !)
endif
ifdef NASM_PREFIX
NASM=$(NASM_PREFIX)nasm
else
NASM=nasm
endif
all: $(BOOTSECTOR_BINS) $(PBOOTSECTOR_BINS) $(TEXTFILES_TARGET)
$(BOOTSECTOR_BINS): boot0.s $(BOOTSECTOR_SRCS)
@echo "[NASM] $(@F).s -> $@"
@"$(NASM)" $(@F).s -o $@
$(TEXTFILES_TARGET): $(TEXTFILES)
@cp -v $(@F) $@
clean:
rm -f $(BOOTSECTOR_BINS) $(PBOOTSECTOR_BINS) $(TEXTFILES_TARGET) *~

54
BootHFS/Makefile.win Normal file
View File

@ -0,0 +1,54 @@
!ifndef DESTDIR
!error Variable DESTDIR must be defined!
!endif
!ifdef NASM_PREFIX
NASM=$(NASM_PREFIX)nasm
!else
NASM=nasm
!endif
all: boot0 boot0af boot0ss boot0md boot1h boot1h2 boot1f32 boot1f32alt boot1x boot1xalt
boot0: boot0.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot0af: boot0af.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot0ss: boot0ss.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot0md: boot0md.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1h: boot1h.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1h2: boot1h2.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1f32: boot1f32.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1f32alt: boot1f32alt.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1x: boot1x.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
boot1xalt: boot1xalt.s
@echo -^> "$@"
@"$(NASM)" $(@F).s -o $(DESTDIR)\$@
clean:
del /f boot0 boot0af boot0ss boot0md boot1h boot1h2 boot1f32 boot1f32alt boot1x boot1xalt *~

View File

@ -22,7 +22,7 @@
STATIC VOID *mAppleKeyMapDbRegistration = NULL;
APPLE_KEY_MAP_DATABASE_PROTOCOL *AppleKeyMapDb = NULL;
APPLE_KEY_MAP_DATABASE_PROTOCOL *mAppleKeyMapDb = NULL;
STATIC
EFI_STATUS
@ -72,10 +72,10 @@ BiosKbAppleKeyMapDbInstallNotify (
Status = gBS->LocateProtocol (
&gAppleKeyMapDatabaseProtocolGuid,
mAppleKeyMapDbRegistration,
(VOID **)&AppleKeyMapDb
(VOID **)&mAppleKeyMapDb
);
if (!EFI_ERROR (Status)) {
BiosKbSetAppleKeyMapDb ((BIOS_KEYBOARD_DEV *)Context, AppleKeyMapDb);
BiosKbSetAppleKeyMapDb ((BIOS_KEYBOARD_DEV *)Context, mAppleKeyMapDb);
gBS->CloseEvent (Event);
}
}
@ -96,10 +96,10 @@ BiosKbLocateAppleKeyMapDb (
Status = gBS->LocateProtocol (
&gAppleKeyMapDatabaseProtocolGuid,
NULL,
(VOID **)&AppleKeyMapDb
(VOID **)&mAppleKeyMapDb
);
if (!EFI_ERROR (Status)) {
BiosKbSetAppleKeyMapDb (BiosKeyboardDevice, AppleKeyMapDb);
BiosKbSetAppleKeyMapDb (BiosKeyboardDevice, mAppleKeyMapDb);
}
else {
EfiCreateProtocolNotifyEvent (

View File

@ -2074,7 +2074,6 @@ BiosKeyboardTimerHandler (
if (Regs.E.EFLAGS.Bits.ZF != 0) {
gBS->RestoreTPL (OldTpl);
if ( apple_need_zero ) {
APPLE_KEY Keys[8]; // APPLE_KEY is UINT16
//DBG("BiosKeyboardPrivate->KeyMapDb->SetKeyStrokeBufferKeys 0\n");
BiosKeyboardPrivate->KeyMapDb->SetKeyStrokeBufferKeys (
BiosKeyboardPrivate->KeyMapDb,

View File

@ -1,7 +0,0 @@
This directory will be used to contain the new EDK II files:
FrameworkDatabase.db - Second generation XML workspace info
target.txt - Restricts a build to defined values
tools_def.txt - Information about 3rd party tools
These files will be created from the template files in the new
BaseTools\Conf directory if and only if they do not exist.

View File

@ -1,473 +0,0 @@
#
# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>
# Portions copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
## Syntax
#
# "*" is used to indicate that the source files will be processed at the same time.
# "?" is used to indicate that the source files will be processed one by one.
#
# "[" <File-Type>[.<Build-Type>][.<Arch>][, <File-Type>[.<Build-Type>][.<Arch>]] "]" <EOL>
# <InputFile[.<ToolChainFamily>]> <EOL>
# (?|*).<File-Extension> [(\n|,) (?|*).<File-Extension>]
#
# <OutputFile[.<ToolChainFamily>]> <EOL>
# <FileFullPath>
#
# <ExtraDependency>
# <FileFullPath>
#
# <Command[.<ToolChainFamily>]> <EOL>
# <Command1>
# [<Command2>]
#
# <Build-Type> is the MODULE_TYPE in EDK2 or COMPONENT_TYPE in EDK.
# Missing <InputFile> will cause an exception and break build.
# Missing <Command> will cause that related build target won't be generated but
# won't break build.
#
## Placeholders for string substitution
#
# ${src} Source file(s) to be built (full path)
# ${s_path} Source file directory (absolute path)
# ${s_dir} Source file relative directory within a module
# (Note: ${s_dir} is always equals to "." if source file is given in absolute path.)
# ${s_name} Source file name without path
# ${s_base} Source file name without extension and path
# ${s_ext} Source file extension
#
# ${dst} Destination file(s) built from ${src} (full path)
# ${d_path} Destination file directory (absolute path)
# ${d_name} Destination file name without path
# ${d_base} Destination file name without extension and path
# ${d_ext} Destination file extension
#
# (+) Directory separator
#
## Macro
# $(WORKSPACE) Workspace directory
# $(OUTPUT_DIR) Directory for intermediate files for building a module
# $(DEBUG_DIR) Directory for files used to debug a module
# $(BUILD_DIR) All files for building a platform will be put in this directory
# $(BIN_DIR) Common directory for executable files
# $(FV_DIR) Directory to store flash image files
# $(INC) Search path of current module
# $(INC_LIST) A file containing search pathes of current module
# $(LIBS) Static library files of current module
# $(<tool>_FLAGS) Tools flags of current module
# $(MODULE_NAME) Current module name
# $(MODULE_NAME_GUID) Current module name with module FILE_GUID if same $(MODULE_NAME) exists
# in different modules, otherwise its value is same as $(MODULE_NAME)
# $(MODULE_TYPE) Current module type
# $(MODULE_GUID) Current module guid
# $(ARCH) Architecture of current module
# $(TOOLCHAIN) Toolchain used to build current module
# $(TARGET) Target of current module (DEBUG/RELEASE)
# $(<tool>) Path of tool
# $(EDK_TOOLS_PATH) Path of build tools
# $(<FILE_TYPES>) File list of each file type
# (Note: The macro name is derived from file type name. For example,
# C-Code-File will have C_CODE_FILES macro.)
# $(<FILE_TYPES_LIST>) Macro point to a file containing list of files of a file type
# (
# Note: The macro and file name are derived from file type name.
# For example, C-Code-File will have C_CODE_FILES_LIST macro pointing
# to $(OUTPUT_DIR)/c_code_files.lst. The list file and macro name
# will be generated only when this macro is used in command line.
# This is intended to get over the long command line limitation.
# )
#
# $(CP) copy command
# $(MV) move command
# $(RM) delete command
# $(MD) create dir command
# $(RD) remove dir command
#
## Reserved File-Type
#
# Don't change following names of file types and their associated files,
# which are also used in tools' code
#
# C-Code-File
# C-Header-File
# Dynamic-Library-File
# Static-Library-File
# Visual-Form-Representation-File
# Unicode-Text-File
#
## Build Rule Version Number
# build_rule_version=0.1
#
[C-Code-File]
<InputFile>
?.c
?.C
?.cc
?.CC
?.cpp
?.Cpp
?.CPP
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
<Command.MSFT, Command.INTEL>
"$(CC)" /Fo${dst} $(CC_FLAGS) $(INC) ${src}
[C-Code-File.COMMON.IPF]
<InputFile>
?.c
?.C
?.cc
?.CC
?.cpp
?.Cpp
?.CPP
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
<Command.MSFT, Command.INTEL>
"$(CC)" /Fo${dst} $(CC_FLAGS) $(INC) ${src}
[C-Code-File.BASE.AARCH64,C-Code-File.SEC.AARCH64,C-Code-File.PEI_CORE.AARCH64,C-Code-File.PEIM.AARCH64]
<InputFile>
?.c
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
[C-Header-File]
<InputFile>
*.h, *.H
<OutputFile>
<Command>
[Assembly-Code-File.COMMON.COMMON]
<InputFile.MSFT, InputFile.INTEL, InputFile.RVCT>
?.asm, ?.Asm, ?.ASM
<InputFile.GCC>
?.S, ?.s
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
<Command.MSFT, Command.INTEL>
"$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i
Trim --source-code --convert-hex --trim-long -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i
"$(ASM)" /Fo${dst} $(ASM_FLAGS) /I${s_path} $(INC) ${d_path}(+)${s_base}.iii
[Nasm-Assembly-Code-File.COMMON.COMMON]
<InputFile>
?.nasm
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
<Command>
"$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i
Trim --trim-long --source-code -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i
"$(NASM)" -I${s_path}(+) $(NASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii
[Assembly-Code-File.COMMON.IPF]
<InputFile>
?.s
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
<Command.MSFT, Command.INTEL>
"$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i
Trim --source-code -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i
# For RVCTCYGWIN ASM_FLAGS must be first to work around pathing issues
"$(ASM)" $(ASM_FLAGS) -o ${dst} ${d_path}(+)${s_base}.iii
[Visual-Form-Representation-File]
<InputFile>
?.vfr
?.Vfr
?.VFR
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(DEBUG_DIR)(+)${s_dir}(+)${s_base}.c
<Command>
"$(VFRPP)" $(VFRPP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_base}.i
"$(VFR)" $(VFR_FLAGS) --string-db $(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk --output-directory ${d_path} $(OUTPUT_DIR)(+)${s_base}.i
[Object-File]
<InputFile>
*.obj
*.o
<OutputFile>
$(OUTPUT_DIR)(+)$(MODULE_NAME).lib
<Command.MSFT, Command.INTEL>
"$(SLINK)" $(SLINK_FLAGS) /OUT:${dst} @$(OBJECT_FILES_LIST)
[Static-Library-File]
<InputFile>
*.lib
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(DEBUG_DIR)(+)$(MODULE_NAME).dll
<Command.MSFT, Command.INTEL>
"$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)
[Static-Library-File.USER_DEFINED]
<InputFile>
*.lib
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(DEBUG_DIR)(+)$(MODULE_NAME)
<Command.MSFT, Command.INTEL>
"$(DLINK)" $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)
[Dynamic-Library-File]
<InputFile>
?.dll
<OutputFile>
$(DEBUG_DIR)(+)$(MODULE_NAME).efi
<Command.MSFT, Command.INTEL, Command.RVCT>
"$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS)
$(CP) ${dst} $(OUTPUT_DIR)
$(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi
-$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR)
-$(CP) $(DEBUG_DIR)(+)*.pdb $(OUTPUT_DIR)
[Dependency-Expression-File]
<InputFile>
?.dxs, ?.Dxs, ?.DXS
<OutputFile>
$(OUTPUT_DIR)(+)$(MODULE_NAME).depex
<ExtraDependency>
$(MAKE_FILE)
<Command>
"$(PP)" $(APP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i
Trim --source-code -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i
GenDepex -t $(MODULE_TYPE) -o ${dst} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii
[Acpi-Source-Language-File]
<InputFile>
?.asl, ?.Asl, ?.ASL
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.aml
<ExtraDependency>
$(MAKE_FILE)
<Command.MSFT, Command.INTEL>
Trim --asl-file -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i -i $(INC_LIST) ${src}
"$(ASLPP)" $(ASLPP_FLAGS) $(INC) /I${s_path} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii
Trim --source-code -l -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii
"$(ASL)" $(ASL_FLAGS) $(ASL_OUTFLAGS)${dst} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii
[C-Code-File.AcpiTable]
<InputFile>
?.c
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.acpi
<ExtraDependency>
$(MAKE_FILE)
<Command.MSFT, Command.INTEL>
"$(ASLCC)" /Fo$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(ASLCC_FLAGS) $(INC) ${src}
"$(ASLDLINK)" /OUT:$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(ASLDLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)
[Acpi-Table-Code-File]
<InputFile>
?.aslc, ?.act
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.acpi
<ExtraDependency>
$(MAKE_FILE)
<Command.MSFT, Command.INTEL>
"$(ASLCC)" /Fo$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(ASLCC_FLAGS) $(INC) ${src}
"$(ASLDLINK)" /OUT:$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(ASLDLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)
[Masm16-Code-File]
<InputFile>
?.asm16, ?.Asm16, ?.ASM16, ?.s16, ?.S16
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_base}.com
<Command.MSFT, Command.INTEL>
"$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i
Trim --source-code --convert-hex --trim-long -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i
cd $(OUTPUT_DIR)(+)${s_dir}
"$(ASM16)" /nologo /c /omf $(INC) /Fo$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj ${d_path}(+)${s_base}.iii
"$(ASMLINK)" $(ASMLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj,${dst},,,,
[Nasm-to-Binary-Code-File]
<InputFile>
?.nasmb
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_base}.bin
<Command>
"$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i
Trim --source-code --convert-hex -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i
"$(NASM)" -I${s_path}(+) -l ${d_path}(+)${s_base}.lst $(NASMB_FLAGS) -o $dst ${d_path}(+)${s_base}.iii
# copy the output file with .com postfix that be same to the output file of .asm16
$(CP) ${dst} $(OUTPUT_DIR)(+)${s_base}.com
[Microcode-File.USER_DEFINED, Microcode-File.Microcode]
<InputFile>
?.txt, ?.TXT, ?.Txt, ?.mut, ?.inc
<OutputFile>
$(OUTPUT_DIR)(+)${s_base}.mcb
<Command>
"$(GENFW)" -o ${dst} -m ${src} $(GENFW_FLAGS)
[Microcode-Binary-File]
<InputFile>
*.mcb
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)$(MODULE_NAME).bin
<Command>
"$(GENFW)" -o ${dst} -j $(MICROCODE_BINARY_FILES) $(GENFW_FLAGS)
-$(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).bin
[EFI-Image-File]
<InputFile>
?.efi, ?.Efi, ?.EFI
<OutputFile>
<Command>
[Unicode-Text-File]
<InputFile>
*.uni, *.Uni, *.UNI
<OutputFile>
$(DEBUG_DIR)(+)AutoGen.c
$(DEBUG_DIR)(+)$(MODULE_NAME)StrDefs.h
$(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk
<Command>
[Efi-Image.UEFI_OPTIONROM]
<InputFile>
?.efi, ?.EFI, ?.Efi
<OutputFile>
$(BIN_DIR)(+)$(MODULE_NAME_GUID).rom
<Command>
$(OPTROM) -i $(PCI_DEVICE_ID) -f $(PCI_VENDOR_ID) -l $(PCI_CLASS_CODE) -r $(PCI_REVISION) -o $dst $(OPTROM_FLAGS) $src
[Unicode-Text-File.UEFI_HII]
<InputFile>
*.uni, *.Uni, *.UNI
<OutputFile>
$(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk
$(DEBUG_DIR)(+)$(MODULE_NAME)StrDefs.h
<Command>
[Visual-Form-Representation-File.UEFI_HII]
<InputFile>
?.vfr
?.Vfr
?.VFR
<ExtraDependency>
$(MAKE_FILE)
<OutputFile>
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.hpk
<Command>
"$(VFRPP)" $(VFRPP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i
"$(VFR)" $(VFR_FLAGS) --create-ifr-package --string-db $(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk --output-directory $(OUTPUT_DIR)(+)${s_dir} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i
[Hii-Binary-Package.UEFI_HII]
<InputFile>
*.hpk
<OutputFile.MSFT, OutputFile.INTEL, OutputFile.GCC>
$(OUTPUT_DIR)(+)$(MODULE_NAME)hii.lib
<OutputFile.XCODE, OutputFile.RVCT>
$(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc
<Command.MSFT, Command.INTEL>
"$(GENFW)" -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --hiipackage $(HII_BINARY_PACKAGES) $(GENFW_FLAGS)
"$(RC)" /Fo${dst} $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc

View File

@ -1,21 +0,0 @@
## Sample template: script config tpl
## As a template, for reference only
## This file should keep untouched and served from repo for any update / more samples
## Purpose is to store any predefined script option / other things
## Script should read (final) config.txt first & be overwritten by any matched user arguments
VBIOSPATCHCLOVEREFI=1
ONLYSATA0PATCH=1
USE_LOW_EBDA=0
GENPAGE=1
TOOLCHAIN_DIR=
CONF_PATH=
## OSX
## LINUX
## Windows
CYGWIN_HOME=
PYTHONPATH=

View File

@ -1,16 +0,0 @@
## Sample template: target.txt
## As a template, for reference only
## This file should keep untouched and served from repo for any update / more samples
## This is comment and should be ignored
## We replace '@CLOVER_PATH@' to real Clover path / working dir with the script
ACTIVE_PLATFORM = @CLOVER_PATH@/Clover.dsc
TARGET = RELEASE
TARGET_ARCH = X64
TOOL_CHAIN_CONF = @CLOVER_PATH@/Conf/tools_def.txt
TOOL_CHAIN_TAG = VS2012x86
MAX_CONCURRENT_THREAD_NUMBER = 1
## Since it commented, no need to parse variable below, use from EDK default
BUILD_RULE_CONF = @CLOVER_PATH@/Conf/build_rule.txt
## Another comment

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,7 @@ STATIC UINT16 mIdProduct = 0x021d; //iMac aluminium keyboard
STATIC UINT8 mCountryCode = 0;
*/
STATIC VOID *mAppleKeyMapDbRegistration = NULL;
APPLE_KEY_MAP_DATABASE_PROTOCOL *AppleKeyMapDb = NULL;
APPLE_KEY_MAP_DATABASE_PROTOCOL *mAppleKeyMapDb = NULL;
STATIC
EFI_STATUS
@ -79,10 +79,10 @@ UsbKbAppleKeyMapDbInstallNotify (
Status = gBS->LocateProtocol (
&gAppleKeyMapDatabaseProtocolGuid,
mAppleKeyMapDbRegistration,
(VOID **)&AppleKeyMapDb
(VOID **)&mAppleKeyMapDb
);
if (!EFI_ERROR (Status)) {
UsbKbSetAppleKeyMapDb ((USB_KB_DEV *)Context, AppleKeyMapDb);
UsbKbSetAppleKeyMapDb ((USB_KB_DEV *)Context, mAppleKeyMapDb);
gBS->CloseEvent (Event);
}
}
@ -103,10 +103,10 @@ UsbKbLocateAppleKeyMapDb (
Status = gBS->LocateProtocol (
&gAppleKeyMapDatabaseProtocolGuid,
NULL,
(VOID **)&AppleKeyMapDb
(VOID **)&mAppleKeyMapDb
);
if (!EFI_ERROR (Status)) {
UsbKbSetAppleKeyMapDb (UsbKeyboardDevice, AppleKeyMapDb);
UsbKbSetAppleKeyMapDb (UsbKeyboardDevice, mAppleKeyMapDb);
}
else /*if (PcdGetBool (PcdNotifyAppleKeyMapDbInUsbKbDriver))*/ { //true
EfiCreateProtocolNotifyEvent (

View File

@ -5,6 +5,7 @@
#include <Library/MemoryAllocationLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/UefiRuntimeServicesTableLib.h>
STATIC UINT32 mCurrentColor;
@ -61,14 +62,8 @@ UserInterfaceThemeEntryPoint (
EFI_STATUS Status;
UINTN DataSize;
UINT32 Color;
EFI_BOOT_SERVICES* gBS;
EFI_RUNTIME_SERVICES* gRT;
// Default color is black
mCurrentColor = BLACK_COLOR;
gRT = SystemTable->RuntimeServices;
gBS = SystemTable->BootServices;
DataSize = 0;
Status = gRT->GetVariable(L"DefaultBackgroundColor", &gEfiAppleNvramGuid, 0, &DataSize, &Color);

View File

@ -400,9 +400,7 @@ FVEntrypoint (IN EFI_HANDLE ImageHandle,
)
{
EFI_STATUS Status;
EFI_BOOT_SERVICES *gBS;
EFI_FIRMWARE_VOLUME_PROTOCOL *ExistingFirmwareVolume;
gBS = SystemTable->BootServices;
Status = gBS->LocateProtocol (&gEfiFirmwareVolumeProtocolGuid, NULL, (VOID **)&ExistingFirmwareVolume);

View File

@ -83,7 +83,7 @@ HSHash(
return EFI_SUCCESS;
}
EFI_HASH_PROTOCOL HashProto = {
EFI_HASH_PROTOCOL mHashProto = {
&HSGetHashSize,
&HSHash
};
@ -107,7 +107,7 @@ HSCreateChild(
return EFI_OUT_OF_RESOURCES;
}
CopyMem(&PrivateData->Proto, &HashProto, sizeof HashProto);
CopyMem(&PrivateData->Proto, &mHashProto, sizeof mHashProto);
Status = gBS->InstallProtocolInterface(
ChildHandle,

File diff suppressed because it is too large Load Diff

View File

@ -5424,13 +5424,13 @@ VOID FixBiosDsdt (UINT8* temp, EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE* fadt,
// Fix Display
if ((gSettings.FixDsdt & FIX_DISPLAY) || (gSettings.FixDsdt & FIX_INTELGFX)) {
INT32 i;
for (i=0; i<4; i++) {
if (DisplayADR1[i]) {
if (((DisplayVendor[i] != 0x8086) && (gSettings.FixDsdt & FIX_DISPLAY)) ||
((DisplayVendor[i] == 0x8086) && (gSettings.FixDsdt & FIX_INTELGFX))) {
DsdtLen = FIXDisplay(temp, DsdtLen, i);
MsgLog("patch Display #%d of Vendor=0x%4x\n", i, DisplayVendor[i]);
INT32 j;
for (j=0; j<4; ++j) {
if (DisplayADR1[j]) {
if (((DisplayVendor[j] != 0x8086) && (gSettings.FixDsdt & FIX_DISPLAY)) ||
((DisplayVendor[j] == 0x8086) && (gSettings.FixDsdt & FIX_INTELGFX))) {
DsdtLen = FIXDisplay(temp, DsdtLen, j);
MsgLog("patch Display #%d of Vendor=0x%4x\n", j, DisplayVendor[j]);
}
}
}

View File

@ -315,7 +315,10 @@ ParseACPIName(CHAR8 *String)
for (i = pos0 + 1, j = 0; i < pos1; i++) {
List->Name[j++] = String[i];
}
while (j < 4) List->Name[j++] = '_'; //extend by '_' up to 4 symbols
// extend by '_' up to 4 symbols
if (j < 4) {
gBS->SetMem(List->Name + j, 4 - j, '_');
}
List->Name[4] = '\0';
// }
// DBG("string between [%d,%d]: %a\n", pos0, pos1, List->Name);
@ -2403,7 +2406,7 @@ GetEarlyUserSettings (
Prop = GetProperty (DictPointer, "DefaultVolume");
if (Prop != NULL) {
UINTN Size = AsciiStrSize (Prop->string);
Size = AsciiStrSize (Prop->string);
if (Size > 0) {
if (gSettings.DefaultVolume != NULL) { //override value from Boot Option
FreePool(gSettings.DefaultVolume);
@ -4836,7 +4839,7 @@ GetUserSettings(
PropCount = GetTagCount(Prop2); //properties count for this device
// DBG("Add %d properties:\n", PropCount);
for (j = 0; j < PropCount; j++) {
TagPtr Prop3 = NULL;
Prop3 = NULL;
DevProps = *Child;
*Child = AllocateZeroPool(sizeof(DEV_PROPERTY));
(*Child)->Next = DevProps;
@ -6393,7 +6396,7 @@ CHAR8 *GetOSVersion(IN LOADER_ENTRY *Entry)
// Check for ia.log - InstallESD/createinstallmedia/startosinstall
// Implemented by Sherlocks
if (OSVersion == NULL) {
CHAR8 *i, *fileBuffer, *targetString;
CHAR8 *s, *fileBuffer, *targetString;
CHAR8 *Res5 = AllocateZeroPool(5), *Res6 = AllocateZeroPool(6), *Res7 = AllocateZeroPool(7), *Res8 = AllocateZeroPool(8);
UINTN fileLen = 0;
CHAR16 *InstallerLog = L"\\Mac OS X Install Data\\ia.log"; // 10.7
@ -6408,51 +6411,51 @@ CHAR8 *GetOSVersion(IN LOADER_ENTRY *Entry)
if (!EFI_ERROR (Status)) {
targetString = (CHAR8*) AllocateZeroPool(fileLen+1);
CopyMem((VOID*)targetString, (VOID*)fileBuffer, fileLen);
i = SearchString(targetString, fileLen, "Running OS Build: Mac OS X ", 27);
if (i[31] == ' ') {
AsciiSPrint (Res5, 5, "%c%c.%c\n", i[27], i[28], i[30]);
s = SearchString(targetString, fileLen, "Running OS Build: Mac OS X ", 27);
if (s[31] == ' ') {
AsciiSPrint (Res5, 5, "%c%c.%c\n", s[27], s[28], s[30]);
OSVersion = AllocateCopyPool (AsciiStrSize (Res5), Res5);
if (i[38] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", i[33], i[34], i[35], i[36], i[37]);
if (s[38] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", s[33], s[34], s[35], s[36], s[37]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res6), Res6);
} else if (i[39] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", i[33], i[34], i[35], i[36], i[37], i[38]);
} else if (s[39] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", s[33], s[34], s[35], s[36], s[37], s[38]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res7), Res7);
}
} else if (i[31] == '.') {
AsciiSPrint (Res7, 7, "%c%c.%c.%c\n", i[27], i[28], i[30], i[32]);
} else if (s[31] == '.') {
AsciiSPrint (Res7, 7, "%c%c.%c.%c\n", s[27], s[28], s[30], s[32]);
OSVersion = AllocateCopyPool (AsciiStrSize (Res7), Res7);
if (i[40] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", i[35], i[36], i[37], i[38], i[39]);
if (s[40] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", s[35], s[36], s[37], s[38], s[39]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res6), Res6);
} else if (i[41] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", i[35], i[36], i[37], i[38], i[39], i[40]);
} else if (s[41] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", s[35], s[36], s[37], s[38], s[39], s[40]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res7), Res7);
}
} else if (i[32] == ' ') {
AsciiSPrint (Res6, 6, "%c%c.%c%c\n", i[27], i[28], i[30], i[31]);
} else if (s[32] == ' ') {
AsciiSPrint (Res6, 6, "%c%c.%c%c\n", s[27], s[28], s[30], s[31]);
OSVersion = AllocateCopyPool (AsciiStrSize (Res6), Res6);
if (i[39] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", i[34], i[35], i[36], i[37], i[38]);
if (s[39] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", s[34], s[35], s[36], s[37], s[38]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res6), Res6);
} else if (i[40] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", i[34], i[35], i[36], i[37], i[38], i[39]);
} else if (s[40] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", s[34], s[35], s[36], s[37], s[38], s[39]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res7), Res7);
} else if (i[41] == ')') {
AsciiSPrint (Res8, 8, "%c%c%c%c%c%c%c\n", i[34], i[35], i[36], i[37], i[38], i[39], i[40]);
} else if (s[41] == ')') {
AsciiSPrint (Res8, 8, "%c%c%c%c%c%c%c\n", s[34], s[35], s[36], s[37], s[38], s[39], s[40]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res8), Res8);
}
} else if (i[32] == '.') {
AsciiSPrint (Res8, 8, "%c%c.%c%c.%c\n", i[27], i[28], i[30], i[31], i[33]);
} else if (s[32] == '.') {
AsciiSPrint (Res8, 8, "%c%c.%c%c.%c\n", s[27], s[28], s[30], s[31], s[33]);
OSVersion = AllocateCopyPool (AsciiStrSize (Res8), Res8);
if (i[41] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", i[36], i[37], i[38], i[39], i[40]);
if (s[41] == ')') {
AsciiSPrint (Res6, 6, "%c%c%c%c%c\n", s[36], s[37], s[38], s[39], s[40]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res6), Res6);
} else if (i[42] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", i[36], i[37], i[38], i[39], i[40], i[41]);
} else if (s[42] == ')') {
AsciiSPrint (Res7, 7, "%c%c%c%c%c%c\n", s[36], s[37], s[38], s[39], s[40], s[41]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res7), Res7);
} else if (i[43] == ')') {
AsciiSPrint (Res8, 8, "%c%c%c%c%c%c%c\n", i[36], i[37], i[38], i[39], i[40], i[41], i[42]);
} else if (s[43] == ')') {
AsciiSPrint (Res8, 8, "%c%c%c%c%c%c%c\n", s[36], s[37], s[38], s[39], s[40], s[41], s[42]);
Entry->BuildVersion = AllocateCopyPool (AsciiStrSize (Res8), Res8);
}
}
@ -7001,15 +7004,15 @@ SetDevices (LOADER_ENTRY *Entry)
//First make string from Device->Properties
Prop = gSettings.ArbProperties;
device = NULL;
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
while (Prop) {
if (Prop->Device != 0) {
Prop = Prop->Next; //skip CustomProperties
continue;
}
device = devprop_add_device_pci(string, NULL, Prop->DevicePath);
device = devprop_add_device_pci(device_inject_string, NULL, Prop->DevicePath);
DBG("add device: %s\n", DevicePathToStr(Prop->DevicePath));
Prop2 = Prop->Child;
while (Prop2) {
@ -7083,7 +7086,7 @@ SetDevices (LOADER_ENTRY *Entry)
continue;
}
if (!PCIdevice.used) {
device = devprop_add_device_pci(string, &PCIdevice, NULL);
device = devprop_add_device_pci(device_inject_string, &PCIdevice, NULL);
PCIdevice.used = TRUE;
}
//special corrections
@ -7799,21 +7802,21 @@ SetDevices (LOADER_ENTRY *Entry)
if (StringDirty) {
EFI_PHYSICAL_ADDRESS BufferPtr = EFI_SYSTEM_TABLE_MAX_ADDRESS; //0xFE000000;
stringlength = string->length * 2;
DBG ("stringlength = %d\n", stringlength);
// gDeviceProperties = AllocateAlignedPages EFI_SIZE_TO_PAGES (stringlength + 1), 64);
device_inject_stringlength = device_inject_string->length * 2;
DBG ("stringlength = %d\n", device_inject_stringlength);
// gDeviceProperties = AllocateAlignedPages EFI_SIZE_TO_PAGES (device_inject_stringlength + 1), 64);
Status = gBS->AllocatePages (
AllocateMaxAddress,
EfiACPIReclaimMemory,
EFI_SIZE_TO_PAGES (stringlength + 1),
EFI_SIZE_TO_PAGES (device_inject_stringlength + 1),
&BufferPtr
);
if (!EFI_ERROR (Status)) {
mProperties = (UINT8*)(UINTN)BufferPtr;
gDeviceProperties = (VOID*)devprop_generate_string (string);
gDeviceProperties[stringlength] = 0;
gDeviceProperties = (VOID*)devprop_generate_string (device_inject_string);
gDeviceProperties[device_inject_stringlength] = 0;
// DBG (gDeviceProperties);
// DBG ("\n");
// StringDirty = FALSE;
@ -7829,9 +7832,9 @@ SetDevices (LOADER_ENTRY *Entry)
FreePool(gSettings.AddProperties);
}
if (gSettings.ArbProperties) {
DEV_PROPERTY *Prop = gSettings.ArbProperties;
DEV_PROPERTY *Props;
DEV_PROPERTY *Next;
Prop = gSettings.ArbProperties;
while (Prop) {
Props = Prop->Child;
if (Prop->Label) {

View File

@ -2019,14 +2019,14 @@ BOOLEAN setup_ati_devprop(LOADER_ENTRY *Entry, pci_dt_t *ati_dev)
// -------------------------------------------------
// Find a better way to do this (in device_inject.c)
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
devicepath = get_pci_dev_path(ati_dev);
//card->device = devprop_add_device(string, devicepath);
if (ati_dev && !ati_dev->used) {
card->device = devprop_add_device_pci(string, ati_dev, NULL);
card->device = devprop_add_device_pci(device_inject_string, ati_dev, NULL);
ati_dev->used = TRUE;
}

View File

@ -26,9 +26,9 @@
UINT32 devices_number = 1;
UINT32 builtin_set = 0;
DevPropString *string = NULL;
UINT8 *stringdata = NULL;
UINT32 stringlength = 0;
DevPropString *device_inject_string = NULL;
UINT8 *device_inject_stringdata = NULL;
UINT32 device_inject_stringlength = 0;
//pci_dt_t* nvdevice;
//SwapBytes16 or 32
@ -50,14 +50,14 @@ UINT32 stringlength = 0;
DevPropString *devprop_create_string(VOID)
{
// DBG("Begin creating strings for devices:\n");
string = (DevPropString*)AllocateZeroPool(sizeof(DevPropString));
device_inject_string = (DevPropString*)AllocateZeroPool(sizeof(DevPropString));
if(string == NULL)
if(device_inject_string == NULL)
return NULL;
string->length = 12;
string->WHAT2 = 0x01000000;
return string;
device_inject_string->length = 12;
device_inject_string->WHAT2 = 0x01000000;
return device_inject_string;
}
@ -357,14 +357,14 @@ BOOLEAN set_eth_props(pci_dt_t *eth_dev)
return FALSE;
}
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
#if DEBUG_INJECT
devicepath = get_pci_dev_path(eth_dev);
#endif
if (eth_dev && !eth_dev->used) {
device = devprop_add_device_pci(string, eth_dev, NULL);
device = devprop_add_device_pci(device_inject_string, eth_dev, NULL);
eth_dev->used = TRUE;
}
@ -437,14 +437,14 @@ BOOLEAN set_usb_props(pci_dt_t *usb_dev)
BOOLEAN Injected = FALSE;
UINTN i;
if (!string)
string = devprop_create_string();
if (!device_inject_string)
device_inject_string = devprop_create_string();
#if DEBUG_INJECT
devicepath = get_pci_dev_path(usb_dev);
#endif
if (usb_dev && !usb_dev->used) {
device = devprop_add_device_pci(string, usb_dev, NULL);
device = devprop_add_device_pci(device_inject_string, usb_dev, NULL);
usb_dev->used = TRUE;
}

View File

@ -154,9 +154,9 @@ struct DevPropString {
typedef struct DevPropString DevPropString;
extern DevPropString *string;
extern UINT8 *stringdata;
extern UINT32 stringlength;
extern DevPropString *device_inject_string;
extern UINT8 *device_inject_stringdata;
extern UINT32 device_inject_stringlength;
DevPropString *devprop_create_string(void);

View File

@ -1339,12 +1339,12 @@ BOOLEAN setup_gma_devprop(LOADER_ENTRY *Entry, pci_dt_t *gma_dev)
break;
}
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
if (gma_dev && !gma_dev->used) {
device = devprop_add_device_pci(string, gma_dev, NULL);
device = devprop_add_device_pci(device_inject_string, gma_dev, NULL);
gma_dev->used = TRUE;
}

View File

@ -868,14 +868,14 @@ BOOLEAN setup_hda_devprop(EFI_PCI_IO_PROTOCOL *PciIo, pci_dt_t *hda_dev, CHAR8 *
BOOLEAN Injected = FALSE;
UINTN i;
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
#if DEBUG_INJECT
devicepath = get_pci_dev_path(hda_dev);
#endif
if (hda_dev && !hda_dev->used) {
device = devprop_add_device_pci(string, hda_dev, NULL);
device = devprop_add_device_pci(device_inject_string, hda_dev, NULL);
hda_dev->used = TRUE;
}
@ -893,7 +893,7 @@ BOOLEAN setup_hda_devprop(EFI_PCI_IO_PROTOCOL *PciIo, pci_dt_t *hda_dev, CHAR8 *
}
if (hda_dev && !hda_dev->used) {
device = devprop_add_device_pci(string, hda_dev, NULL);
device = devprop_add_device_pci(device_inject_string, hda_dev, NULL);
hda_dev->used = TRUE;
}
if (!device) {
@ -930,7 +930,7 @@ BOOLEAN setup_hda_devprop(EFI_PCI_IO_PROTOCOL *PciIo, pci_dt_t *hda_dev, CHAR8 *
return FALSE;
}
if (hda_dev && !hda_dev->used) {
device = devprop_add_device_pci(string, hda_dev, NULL);
device = devprop_add_device_pci(device_inject_string, hda_dev, NULL);
hda_dev->used = TRUE;
}
if (!device) {

View File

@ -2393,12 +2393,12 @@ BOOLEAN setup_nvidia_devprop(pci_dt_t *nvda_dev)
nvCardType, nvda_dev->vendor_id, nvda_dev->device_id,
devicepath, devices_number);
if (!string) {
string = devprop_create_string();
if (!device_inject_string) {
device_inject_string = devprop_create_string();
}
if (nvda_dev && !nvda_dev->used) {
device = devprop_add_device_pci(string, nvda_dev, NULL);
device = devprop_add_device_pci(device_inject_string, nvda_dev, NULL);
nvda_dev->used = TRUE;
}

View File

@ -3957,7 +3957,7 @@ float addLetter(NSVGparser* p, CHAR16 letter, float x, float y, float scale, UIN
}
if (!g) {
//missing glyph
NSVGglyph* g = p->text->font->missingGlyph;
g = p->text->font->missingGlyph;
shape->paths = g->path;
// if (shape->paths) {
// DBG("Missing glyph %x, path[0]=%d\n", letter, (int)shape->paths->pts[0]);

View File

@ -819,8 +819,8 @@ static void nsvg__flattenShapeStroke(NSVGrasterizer* r, NSVGshape* shape, float*
p.y = path->pts[1];
nsvg__addPathPoint(r, &p, xform, NSVG_PT_CORNER);
for (i = 0; i < path->npts-1; i += 3) {
float* p = &path->pts[i*2];
nsvg__flattenCubicBez2(r, p, xform, NSVG_PT_CORNER);
float* pt = &path->pts[i*2];
nsvg__flattenCubicBez2(r, pt, xform, NSVG_PT_CORNER);
}
if (r->npoints < 2)
continue;