Makefile 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2006-2010 OpenWrt.org
  4. include $(TOPDIR)/rules.mk
  5. include $(INCLUDE_DIR)/image.mk
  6. define Build/mkfwimage
  7. $(STAGING_DIR_HOST)/bin/mkfwimage \
  8. -B $(1).$(VERSION_DIST).$(REVISION) \
  9. -k $(IMAGE_KERNEL) \
  10. -r $(IMAGE_ROOTFS) \
  11. -o [email protected] && \
  12. mv [email protected] $@
  13. endef
  14. define Build/combined-image
  15. -sh $(TOPDIR)/scripts/combined-image.sh \
  16. "$(IMAGE_KERNEL)" \
  17. "$(IMAGE_ROOTFS)" \
  18. "[email protected]" && \
  19. mv [email protected] $@
  20. endef
  21. define Build/mkmylofw
  22. $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
  23. -p0x020000:0x130000:ah:0x80041000:linux:$(IMAGE_KERNEL) \
  24. -p0x150000:0x2a0000:::rootfs:$(IMAGE_ROOTFS) \
  25. [email protected] && \
  26. mv [email protected] $@
  27. endef
  28. define Build/gzip-kernel
  29. gzip -9n -c $@ > [email protected]
  30. dd [email protected] of=$@ bs=65536 conv=sync
  31. endef
  32. define Build/lzma-kernel
  33. $(STAGING_DIR_HOST)/bin/lzma e $@ [email protected]
  34. dd [email protected] of=$@ bs=65536 conv=sync
  35. endef
  36. define Build/copy-kernel
  37. rm -f $@ [email protected]
  38. cp $< $@
  39. cp $< [email protected]
  40. endef
  41. define Build/elf-kernel
  42. cp $(IMAGE_KERNEL).elf $@
  43. endef
  44. define Device/Default
  45. PROFILES = Default $$(DEVICE_NAME)
  46. KERNEL := copy-kernel | lzma-kernel
  47. IMAGES := sysupgrade.bin
  48. FILESYSTEMS := squashfs
  49. endef
  50. define Device/generic
  51. DEVICE_VENDOR := Atheros
  52. DEVICE_MODEL := Generic AR2xxx board
  53. IMAGES := kernel.lzma kernel.elf kernel.gz rootfs.bin sysupgrade.bin
  54. IMAGE/kernel.gz := elf-kernel | gzip-kernel
  55. IMAGE/kernel.elf := elf-kernel
  56. IMAGE/kernel.lzma := elf-kernel | lzma-kernel
  57. IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
  58. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | combined-image
  59. IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
  60. endef
  61. TARGET_DEVICES += generic
  62. define Device/ubnt_picostation-2
  63. DEVICE_VENDOR := Ubiquiti
  64. DEVICE_MODEL := Picostation 2 (XS2-8)
  65. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2-8 -v XS2.ar2316
  66. endef
  67. TARGET_DEVICES += ubnt_picostation-2
  68. define Device/ubnt_nanostation-2
  69. DEVICE_VENDOR := Ubiquiti
  70. DEVICE_MODEL := Nanostation 2 (XS2)
  71. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2 -v XS2.ar2316
  72. DEFAULT := n
  73. endef
  74. TARGET_DEVICES += ubnt_nanostation-2
  75. define Device/ubnt_nanostation-5
  76. DEVICE_VENDOR := Ubiquiti
  77. DEVICE_MODEL := Nanostation 5 (XS5)
  78. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS5 -v XS5.ar2313
  79. DEFAULT := n
  80. endef
  81. TARGET_DEVICES += ubnt_nanostation-5
  82. define Device/compex_np25g
  83. DEVICE_VENDOR := Compex
  84. DEVICE_MODEL := NP25G
  85. KERNEL := kernel-bin | gzip-kernel
  86. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw np25g
  87. BROKEN := y
  88. endef
  89. TARGET_DEVICES += compex_np25g
  90. define Device/compex_wpe53g
  91. DEVICE_VENDOR := Compex
  92. DEVICE_MODEL := WPE53G
  93. KERNEL := kernel-bin | gzip-kernel
  94. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw wpe53g
  95. BROKEN := y
  96. endef
  97. TARGET_DEVICES += compex_wpe53g
  98. $(eval $(call BuildImage))