Make.rules 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #
  2. # Copyright (C) 1999-2007 Hewlett-Packard Co.
  3. # Contributed by David Mosberger <[email protected]>
  4. # Contributed by Stephane Eranian <[email protected]>
  5. #
  6. # All rights reserved.
  7. #
  8. # Redistribution and use in source and binary forms, with or without
  9. # modification, are permitted provided that the following conditions
  10. # are met:
  11. #
  12. # * Redistributions of source code must retain the above copyright
  13. # notice, this list of conditions and the following disclaimer.
  14. # * Redistributions in binary form must reproduce the above
  15. # copyright notice, this list of conditions and the following
  16. # disclaimer in the documentation and/or other materials
  17. # provided with the distribution.
  18. # * Neither the name of Hewlett-Packard Co. nor the names of its
  19. # contributors may be used to endorse or promote products derived
  20. # from this software without specific prior written permission.
  21. #
  22. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
  23. # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
  24. # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  25. # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  26. # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
  27. # BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
  28. # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  29. # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
  30. # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  31. # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
  32. # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
  33. # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  34. # SUCH DAMAGE.
  35. #
  36. .SECONDARY:
  37. %.efi: %.so
  38. $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .rodata -j .rel \
  39. -j .rela -j .rel.* -j .rela.* -j .rel* -j .rela* \
  40. -j .areloc -j .reloc $(FORMAT) $*.so $@
  41. %.efi.debug: %.so
  42. $(OBJCOPY) -j .debug_info -j .debug_abbrev -j .debug_aranges \
  43. -j .debug_line -j .debug_str -j .debug_ranges \
  44. -j .note.gnu.build-id \
  45. $(FORMAT) $*.so $@
  46. %.so: %.o
  47. $(LD) $(LDFLAGS) $^ -o $@ $(LOADLIBES)
  48. %.o: %.c
  49. $(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
  50. %.s: %.c
  51. $(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -S $< -o $@
  52. %.i: %.c
  53. $(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@
  54. %.o: %.S
  55. $(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
  56. %.s: %.S
  57. $(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@