Jump to content
2126 posts in this topic

Recommended Posts

Yeah, you are correct, that is tool not needed, only GenPage and EfiLdrImage are. However, the problem is now that those binaries are needed for multiple platforms, they were built automatically before when you setup edk2. So I think that requiring that the edk2 branch be UDK2018 for building the legacy firmware be required is the best approach. Building UEFI only can still happen on the master. Otherwise, they need to be built on the platform or we restrict building the legacy firmware to a specific platform, maybe even version, of macOS. This is just too much work to be reasonable as then we'd have to maintain and support those tools as well.

 

EDIT: Changed UDK2017 to UDK2018.

Edited by apianti

The problem is they are built for the platform you are on when you setup edk2. We could move them into the clover repo but if you look at the commit I linked that removed them, they are built differently for macOS, windows, and linux. So we would have to add the step to make sure they are built, so it is probably just easier to only build the legacy firmware on the condition of using the UDK2018 branch of edk2.

 

EDIT: Forgot to mention that they can't even be built in windows, they need cygwin, they have a special repository for the win32 binaries.

EDIT2: I keep writing UDK2017 but I meant UDK2018.

Edited by apianti

We also can keep BaseTools/Sources in our Patches_for_EDK2. Anticommit or antiupdate :)

Clover repo already contains numerous sources that double EDK2 to prevent them from EDK group's quest on the meaning of life.

  • Like 2
5 hours ago, Slice said:

We also can keep BaseTools/Sources in our Patches_for_EDK2. Anticommit or antiupdate :)

Clover repo already contains numerous sources that double EDK2 to prevent them from EDK group's quest on the meaning of life.

This work: Patches_for_EDK2.zip (against sf r28473 or github a5274cd which seems to be ahead and sf not yet synchronized) with the missing stuff. Makefile udjusted. I left there BootSectImage and GnuGenBootSector but I'm going to try w/o them.

Should we patch UDK2018 as well? Should work I guess as is...

 

EDIT 

lighter solution w/o BootSectImage and GnuGenBootSector:

Patches_for_EDK2.zip

 

17 hours ago, apianti said:

No, the DuetPkg was only needed for one library which has now been moved into the clover repo. Only those tools are needed.

Yep, but when Slice said "without Duet dependencies" I thought just without the legacy firmware. Later I see the commit.

Edited by vector sigma
lighter solution
3 hours ago, vector sigma said:

 

EDIT 

lighter solution w/o BootSectImage and GnuGenBootSector:

Patches_for_EDK2.zip

 

I committed this. Hope it will works for those who use updated EDK2.

  • Like 1
19 minutes ago, Slice said:

I committed this. Hope it will works for those who use updated EDK2.

Also GenVtf was removed in latest commits, apart that, I can't see commits that prevent Clover to be up and running, so r28473 should be used instead of 28338.

I mean from source forge svn

  • Like 1
28 minutes ago, vector sigma said:

Also GenVtf was removed in latest commits, apart that, I can't see commits that prevent Clover to be up and running, so r28473 should be used instead of 28338.

I mean from source forge svn

I see no usage for this application

 

Quote

GenVtf.exe - generate the Boot Strap File (AKA Volume Top File, or VTF) for IPF images

 

10 minutes ago, Slice said:

I see no usage for this application

was just to mention changes and to avoid mixed stuff in BaseTools with new patches (I had to remove it from BaseTools/C/GNUmakefile), i.e "update" and re-patch it :)

Edited by vector sigma
typo

BaseTools/Source/C/Makefile is missing from that patch. And that tool GenVtf was removed with IPF support, which is Itanium, the most dead of dead platforms. lol

Edited by apianti
6 minutes ago, apianti said:

BaseTools/C/Makefile is missing from that patch. And that tool GenVtf was removed with IPF support, which is Itanium, the most dead of dead platforms. lol

I was speaking about BaseTools/Source/C/GNUmakefile, anyway I removed it from the copy I used (with Duet) :)

Edited by vector sigma
9 minutes ago, apianti said:

Yes I know, I was saying the file BaseTools/Source/C/Makefile (I wrote it wrong in my initial post but fixed it) is not in the patch but needs to be.

Is used in Windows? I followed your advice..

 

20 hours ago, apianti said:

EDIT: Forgot to mention that they can't even be built in windows, they need cygwin, they have a special repository for the win32 binaries.

..or I missunderstood you. Later I'll add it back

Edited by vector sigma
3 minutes ago, vector sigma said:

Is used in Windows? I followed your advice..

 

..or I missunderstood you.

 

No. It is for cygwin and some distributions of linux/unix. https://www.gnu.org/software/make/manual/html_node/Makefile-Names.html

Just now, apianti said:

 

No. It is for cygwin and some distributions of linux/unix. https://www.gnu.org/software/make/manual/html_node/Makefile-Names.html

it is ok the following:

## @file
# Windows makefile for C tools build.
#
# Copyright (c) 2009 - 2017, Intel Corporation. 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.
#
HOST_ARCH = IA32

!INCLUDE Makefiles\ms.common

LIBRARIES = Common
APPLICATIONS = \
  BrotliCompress \
  EfiLdrImage \
  EfiRom \
  GenCrc32 \
  GenFfs \
  GenFv \
  GenFw \
  GenPage \
  GenSec \
  LzmaCompress \
  Split \
  TianoCompress \
  VolInfo \
  VfrCompile \
  DevicePath

all: libs apps install

libs: $(LIBRARIES)
	@echo.
	@echo ######################
	@echo # Build libraries
	@echo ######################
	@if not exist $(LIB_PATH) mkdir $(LIB_PATH)
	@Makefiles\NmakeSubdirs.bat all $**

apps: $(APPLICATIONS)
	@echo.
	@echo ######################
	@echo # Build executables
	@echo ######################
	@if not exist $(BIN_PATH) mkdir $(BIN_PATH)
	@Makefiles\NmakeSubdirs.bat all $**

install: $(LIB_PATH) $(BIN_PATH)
	@echo.
	@echo ######################
	@echo # Install to $(SYS_LIB_PATH)
	@echo # Install to $(SYS_BIN_PATH)
	@echo ######################
	@-xcopy $(LIB_PATH)\*.lib $(SYS_LIB_PATH) /I /D /E /F /Y > NUL 2>&1
	@-xcopy $(BIN_PATH)\*.exe $(SYS_BIN_PATH) /I /D /E /F /Y > NUL 2>&1
  @-xcopy $(BIN_PATH)\*.bat $(SYS_BIN_PATH) /I /D /E /F /Y > NUL 2>&1

.PHONY: clean
clean:
  @Makefiles\NmakeSubdirs.bat clean $(LIBRARIES) $(APPLICATIONS)

.PHONY: cleanall
cleanall:
  @Makefiles\NmakeSubdirs.bat cleanall $(LIBRARIES) $(APPLICATIONS)

!INCLUDE Makefiles\ms.rule

?

anyway looks a windows only stuff

I just said it's for cygwin. I guess they removed the linux/unix support from it, I haven't looked for a while but you included the subdirectory Makefiles so it makes no sense not to include that one.

  • Like 1
1 minute ago, apianti said:

 

Why's that? You don't think a ton of windows apps are still 32bit? Because they are.

I have it but didn't use so much, only that confirm that file wasn't touched for years, I guess. nothing else

This is the first changes they have made to base tools in a very long time, pretty sure most of the other makefiles haven't been touched in like eight or nine years.

 

EDIT: Also just confirmed that my base tools binaries in windows are 32bit.

Edited by apianti
  • Like 1
================================================================================
Downloading Clover, using the latest revision
                             <--------------------------------------------------
Unable to get latest Clover revision, check your internet connection or try later.

 

  • Sad 1
40 minutes ago, SavageAUS said:

================================================================================
Downloading Clover, using the latest revision
                             <--------------------------------------------------
Unable to get latest Clover revision, check your internet connection or try later.

 

 

I use Build_Clover.command v4.9.5: at instant, all works fine for Clover. New little issue with SourceForge?.

 
I use Build_Clover.command v4.9.5: at instant, all works fine for Clover. New little issue with SourceForge?.

Yeah I think so. I’ll try again later.


Sent from my iPhone using Tapatalk
  • Like 1
×
×
  • Create New...