# meta-Makefile for rEFInd filesystem drivers
#
-# Most of the functionality is in Make.common; this Makefile merely
-# deletes critical temporary files and calls Make.common with the
+# Most of the functionality is in Make.tiano; this Makefile merely
+# deletes critical temporary files and calls Make.tiano with the
# name of the driver to be built. This is done because of a dependency
# in the fsw_efi.c file on the filesystem type; this file must be
# recompiled for each new filesystem built.
INSTALL_DIR = /boot/efi/EFI/refind/drivers
-all: ext2fs reiserfs iso9660 hfs
+FILESYSTEMS = ext2 ext4 reiserfs iso9660 hfs btrfs ntfs
+FILESYSTEMS_GNUEFI = ext2_gnuefi ext4_gnuefi reiserfs_gnuefi iso9660_gnuefi hfs_gnuefi btrfs_gnuefi ntfs_gnuefi
+TEXTFILES = $(FILESYSTEMS:=*.txt)
-ext2fs:
- rm -f fsw_efi.o
- make DRIVERNAME=ext2 -f Make.common
+# Build the drivers with TianoCore EDK2.....
+
+all: $(FILESYSTEMS)
+
+xfs:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=xfs -f Make.tiano
+
+ext2:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=ext2 -f Make.tiano
+
+ext4:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=ext4 -f Make.tiano
reiserfs:
- rm -f fsw_efi.o
- make DRIVERNAME=reiserfs -f Make.common
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=reiserfs -f Make.tiano
iso9660:
- rm -f fsw_efi.o
- make DRIVERNAME=iso9660 -f Make.common
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=iso9660 -f Make.tiano
hfs:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=hfs -f Make.tiano
+
+btrfs:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=btrfs -f Make.tiano
+
+ntfs:
+ rm -f fsw_efi.obj
+ +make DRIVERNAME=ntfs -f Make.tiano
+
+# Build the drivers with GNU-EFI....
+
+gnuefi: $(FILESYSTEMS_GNUEFI)
+
+all_gnuefi: $(FILESYSTEMS_GNUEFI)
+
+xfs_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=xfs -f Make.gnuefi
+
+ext2_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=ext2 -f Make.gnuefi
+
+ext4_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=ext4 -f Make.gnuefi
+
+reiserfs_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=reiserfs -f Make.gnuefi
+
+iso9660_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=iso9660 -f Make.gnuefi
+
+hfs_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=hfs -f Make.gnuefi
+
+btrfs_gnuefi:
+ rm -f fsw_efi.o
+ +make DRIVERNAME=btrfs -f Make.gnuefi
+
+ntfs_gnuefi:
rm -f fsw_efi.o
- make DRIVERNAME=hfs -f Make.common
+ +make DRIVERNAME=ntfs -f Make.gnuefi
# utility rules
clean:
- rm -f *~ *.so *.o *.efi *.dll err.txt ext2*.txt hfs*.txt iso9660*.txt reiserfs*.txt
+ rm -f *~ *.bak *.o *.obj *.so *.efi *.dll err.txt $(TEXTFILES)
+ +make -C test clean
install: