]> code.delx.au - refind/blobdiff - Make.common
Added "kernel*" as Linux kernel matching string, since Gentoo uses
[refind] / Make.common
index 5661e3d0f1274000a2c76933971c6e0bf358c0d4..af47ccc8f9c1f5a8f016436df1dc412cd5e9dbc2 100644 (file)
@@ -3,22 +3,28 @@
 # Common make rules for building with gnu-efi
 #
 
-EFIINC          = /usr/local/include/efi
-GNUEFILIB       = /usr/local/lib
-EFILIB          = /usr/local/lib
-EFICRT0         = /usr/local/lib
+EFIINC          = /usr/include/efi
+GNUEFILIB       = /usr/lib
+EFILIB          = /usr/lib
+EFICRT0         = /usr/lib
+
+# Comment out above and uncomment below if using locally-compiled GNU-EFI....
+#EFIINC          = /usr/local/include/efi
+#GNUEFILIB       = /usr/local/lib
+#EFILIB          = /usr/local/lib
+#EFICRT0         = /usr/local/lib
 
 HOSTARCH        = $(shell uname -m | sed s,i[3456789]86,ia32,)
 ARCH            := $(HOSTARCH)
 OS             = $(shell uname -s)
-CPPFLAGS        = -I$(EFIINC) -I$(EFIINC)/$(ARCH) -I$(EFIINC)/protocol -DCONFIG_$(ARCH)
+CPPFLAGS        = -I$(EFIINC) -I$(EFIINC)/$(ARCH) -I$(EFIINC)/protocol -I../include -I../refind -I../libeg -DCONFIG_$(ARCH) -D__MAKEWITH_GNUEFI
 
 OPTIMFLAGS      = -O2 -fno-strict-aliasing
 DEBUGFLAGS      = -Wall
 #CFLAGS          = $(ARCH3264) $(OPTIMFLAGS) -fpic -fshort-wchar $(DEBUGFLAGS)
-CFLAGS          = $(ARCH3264) $(OPTIMFLAGS) -fno-stack-protector -fpic -fshort-wchar $(DEBUGFLAGS)
+CFLAGS          = $(ARCH3264) $(OPTIMFLAGS) -fno-stack-protector -fpic -fshort-wchar -mno-red-zone $(DEBUGFLAGS)
 ASFLAGS         = $(ARCH3264)
-LDFLAGS         = -nostdlib -znocombreloc
+LDFLAGS         = -nostdlib -znocombreloc -zdefs
 
 prefix          = /usr/bin/
 CC              = $(prefix)gcc
@@ -47,7 +53,7 @@ ifeq ($(ARCH),x86_64)
 endif
 
 ifeq ($(ARCH),ia32)
-  CPPFLAGS += -DEFI32
+  CPPFLAGS += -DEFI32 -malign-double
 
   ifeq ($(HOSTARCH),x86_64)
     ARCH3264 = -m32
@@ -74,6 +80,7 @@ endif
 LDFLAGS        += -T $(LDSCRIPT) -shared -Bsymbolic -L$(EFILIB) -L$(GNUEFILIB) $(CRTOBJS)
 LIBS            = -lefi -lgnuefi $(shell $(CC) $(ARCH3264) -print-libgcc-file-name)
 FORMAT          = efi-app-$(ARCH)
+FORMAT_DRIVER   = efi-bsdrv-$(ARCH)
 
 
 # general rules
@@ -90,9 +97,9 @@ SHLIB_TARGET = $(subst .efi,.so,$(TARGET))
 $(SHLIB_TARGET): $(OBJS)
        $(LD) $(LOCAL_LDFLAGS) $(LDFLAGS) $(OBJS) -o $@ $(LOCAL_LIBS) $(LIBS)
 
-$(TARGET): $(SHLIB_TARGET)
-       $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .dynsym -j .rel \
-                  -j .rela -j .reloc --target=$(FORMAT) $< $@
+#$(TARGET): $(SHLIB_TARGET)
+#      $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .dynsym -j .rel \
+#                 -j .rela -j .reloc --target=$(FORMAT) $< $@
 
 endif
 
@@ -108,6 +115,6 @@ endif
 # utility rules
 
 clean:
-       rm -f $(TARGET) *~ *.so $(OBJS) *.efi
+       rm -f $(TARGET) *~ *.so $(OBJS) *.efi *.obj refind_*.txt refind_*.dll *.lib
 
 # EOF