]> code.delx.au - refind/blobdiff - refind/Makefile
Properly initialise variable to fix detection of non-Arch kernel versions
[refind] / refind / Makefile
index b03dfefcd5b4dc6b7341377bde446c7ea5d965cf..88fbc407775cede3141c68614b438752275b686a 100644 (file)
@@ -2,6 +2,10 @@
 # refind/Makefile
 # Build control file for the rEFInd boot menu
 #
+# This program is licensed under the terms of the GNU GPL, version 3,
+# or (at your option) any later version.
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 SRCDIR = .
 
@@ -21,21 +25,36 @@ ifeq ($(ARCH),x86_64)
   TARGET = refind_x64.efi
 endif
 
-LOCAL_CPPFLAGS  = -I$(SRCDIR) -I$(SRCDIR)/../include -I$(SRCDIR)/../libeg -I$(SRCDIR)/../mok
-LOCAL_LDFLAGS   = -L$(SRCDIR)/../libeg/ -L$(SRCDIR)/../mok/ -L$(SRCDIR)/../EfiLib/
+ifeq ($(ARCH),aarch64)
+  LIBEG = build
+  TARGET = refind_aa64.efi
+endif
+
+LOCAL_GNUEFI_CFLAGS  = -I$(SRCDIR) -I$(SRCDIR)/../include \
+                       -I$(SRCDIR)/../libeg -I$(SRCDIR)/../mok
+LOCAL_LDFLAGS   = -L$(SRCDIR)/../libeg/ -L$(SRCDIR)/../mok/ \
+                  -L$(SRCDIR)/../EfiLib/
 LOCAL_LIBS      = -leg -lmok -lEfiLib
 
-OBJS            = main.o config.o menu.o screen.o icns.o gpt.o crc32.o lib.o driver_support.o
-#OBJS            = main.o config.o menu.o screen.o icns.o lib.o mok.o driver_support.o variables.o sha256.o pecoff.o simple_file.o security_policy.o guid.o
+OBJS            = main.o mystrings.o apple.o line_edit.o config.o menu.o \
+                  screen.o icns.o gpt.o crc32.o lib.o driver_support.o \
+                 legacy.o
+
+include $(SRCDIR)/../Make.common
 
 all: $(TARGET)
 
-include $(SRCDIR)/../Make.common
+$(SHLIB_TARGET): $(OBJS)
+       $(LD) $(LOCAL_LDFLAGS) $(GNUEFI_LDFLAGS) $(SUBSYSTEM_LDFLAG) $(OBJS) \
+             -o $@ $(LOCAL_LIBS) $(GNUEFI_LIBS)
 
 $(TARGET): $(SHLIB_TARGET)
        $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .dynsym -j .rel \
-                  -j .rela -j .reloc --target=$(FORMAT) $< $@
+                  -j .rela -j .rel.* -j .rela.* -j .rel* -j .rela* \
+                  -j .reloc $(FORMAT) $< $@
        chmod a-x $(TARGET)
 
-# EOF
-# DO NOT DELETE
+clean:
+       rm -f $(TARGET) *~ *.so $(OBJS) *.efi *.obj refind_*.txt \
+               refind_*.dll *.lib
+