From: Petr Štetiar Date: Mon, 5 Jul 2021 08:48:38 +0000 (+0200) Subject: Convert to CMake based project X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=fbafae9f80376ec14d23a47482c90d4003c6d450;p=project%2Ffirmware-utils.git Convert to CMake based project So it can be built separately. Signed-off-by: Petr Štetiar --- diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..0bcc448 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,102 @@ +CMAKE_MINIMUM_REQUIRED(VERSION 3.0) + +PROJECT(firmware-utils C) +INCLUDE(GNUInstallDirs) +INCLUDE(FindZLIB) +INCLUDE(FindOpenSSL) + +IF(NOT ZLIB_FOUND) + MESSAGE(FATAL_ERROR "Unable to find zlib library.") +ENDIF() + +IF(NOT OPENSSL_FOUND) + MESSAGE(FATAL_ERROR "Unable to find OpenSSL librry.") +ENDIF() + +ADD_DEFINITIONS(-Wall -Wno-unused-parameter) + +MACRO(FW_UTIL util deps extra_cflags libs) + ADD_EXECUTABLE(${util} src/${util}.c ${deps}) + IF(NOT ${ARGV2} STREQUAL "") + SET_TARGET_PROPERTIES(${util} PROPERTIES COMPILE_FLAGS ${extra_cflags}) + ENDIF() + IF(NOT ${ARGV3} STREQUAL "") + TARGET_LINK_LIBRARIES(${util} ${libs}) + ENDIF() +ENDMACRO(FW_UTIL) + +FW_UTIL(add_header "" "" "") +FW_UTIL(addpattern "" "" "") +FW_UTIL(asustrx "" "" "") +FW_UTIL(bcm4908asus "" "" "") +FW_UTIL(bcm4908kernel "" "" "") +FW_UTIL(buffalo-enc src/buffalo-lib.c "" "") +FW_UTIL(buffalo-tag src/buffalo-lib.c "" "") +FW_UTIL(buffalo-tftp src/buffalo-lib.c "" "") +FW_UTIL(dgfirmware "" "" "") +FW_UTIL(dgn3500sum "" "" "") +FW_UTIL(dns313-header "" "" "") +FW_UTIL(edimax_fw_header "" "" "") +FW_UTIL(encode_crc "" "" "") +FW_UTIL(fix-u-media-header src/cyg_crc32.c "" "") +FW_UTIL(hcsmakeimage src/bcmalgo.c "" "") +FW_UTIL(imagetag "src/imagetag_cmdline.c;src/cyg_crc32.c" "" "") +FW_UTIL(jcgimage "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(lxlfw "" "" "") +FW_UTIL(lzma2eva "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(makeamitbin "" "" "") +FW_UTIL(mkbrncmdline "" "" "") +FW_UTIL(mkbrnimg "" "" "") +FW_UTIL(mkbuffaloimg "" "" "") +FW_UTIL(mkcameofw "" "" "") +FW_UTIL(mkcasfw "" "" "") +FW_UTIL(mkchkimg "" "" "") +FW_UTIL(mkcsysimg "" "" "") +FW_UTIL(mkdapimg "" "" "") +FW_UTIL(mkdapimg2 "" "" "") +FW_UTIL(mkdhpimg src/buffalo-lib.c "" "") +FW_UTIL(mkdlinkfw src/mkdlinkfw-lib.c --std=c99 ${ZLIB_LIBRARIES}) +FW_UTIL(mkdniimg "" "" "") +FW_UTIL(mkedimaximg "" "" "") +FW_UTIL(mkfwimage "" "-Wextra -D_FILE_OFFSET_BITS=64" ${ZLIB_LIBRARIES}) +FW_UTIL(mkfwimage2 "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(mkheader_gemtek "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(mkhilinkfw "" "" ${OPENSSL_CRYPTO_LIBRARY}) +FW_UTIL(mkmerakifw src/sha1.c "" "") +FW_UTIL(mkmerakifw-old "" "" "") +FW_UTIL(mkmylofw "" "" "") +FW_UTIL(mkplanexfw src/sha1.c "" "") +FW_UTIL(mkporayfw "" "" "") +FW_UTIL(mkrasimage "" --std=gnu99 "") +FW_UTIL(mkrtn56uimg "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(mksenaofw src/md5.c --std=gnu99 "") +FW_UTIL(mksercommfw "" "" "") +FW_UTIL(mktitanimg "" "" "") +FW_UTIL(mktplinkfw "src/mktplinkfw-lib.c;src/md5.c" -fgnu89-inline "") +FW_UTIL(mktplinkfw2 "src/mktplinkfw-lib.c;src/md5.c" -fgnu89-inline "") +FW_UTIL(mkwrggimg src/md5.c "" "") +FW_UTIL(mkwrgimg src/md5.c "" "") +FW_UTIL(mkzcfw src/cyg_crc32.c "" "") +FW_UTIL(mkzynfw "" "" "") +FW_UTIL(motorola-bin "" "" "") +FW_UTIL(nand_ecc "" "" "") +FW_UTIL(nec-enc "" --std=gnu99 "") +FW_UTIL(osbridge-crc "" "" "") +FW_UTIL(oseama src/md5.c "" "") +FW_UTIL(otrx "" "" "") +FW_UTIL(pc1crypt "" "" "") +FW_UTIL(ptgen src/cyg_crc32.c "" "") +FW_UTIL(seama src/md5.c "" "") +FW_UTIL(sign_dlink_ru src/md5.c "" "") +FW_UTIL(spw303v "" "" "") +FW_UTIL(srec2bin "" "" "") +FW_UTIL(tplink-safeloader src/md5.c --std=gnu99 "") +FW_UTIL(trx "" "" "") +FW_UTIL(trx2edips "" "" "") +FW_UTIL(trx2usr "" "" "") +FW_UTIL(uimage_padhdr "" "" ${ZLIB_LIBRARIES}) +FW_UTIL(wrt400n src/cyg_crc32.c "" "") +FW_UTIL(xorimage "" "" "") +FW_UTIL(zyimage "" "" "") +FW_UTIL(zytrx "" "" "") +FW_UTIL(zyxbcm "" "" "") diff --git a/Makefile b/Makefile deleted file mode 100644 index 72cd513..0000000 --- a/Makefile +++ /dev/null @@ -1,108 +0,0 @@ -# -# Copyright (C) 2006-2020 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# -include $(TOPDIR)/rules.mk - -PKG_NAME := firmware-utils -PKG_RELEASE := 7 - -include $(INCLUDE_DIR)/host-build.mk -include $(INCLUDE_DIR)/kernel.mk - -define cc - $(HOSTCC) \ - $(HOST_CFLAGS) \ - -Wno-unused-parameter \ - -include endian.h $(HOST_LDFLAGS) \ - -o $(HOST_BUILD_DIR)/bin/$(firstword $(1)) \ - $(foreach src,$(1),src/$(src).c) \ - $(2) -endef - -define Host/Compile - mkdir -p $(HOST_BUILD_DIR)/bin - $(call cc,add_header,-Wall) - $(call cc,addpattern,-Wall) - $(call cc,asustrx,-Wall) - $(call cc,bcm4908asus,-Wall) - $(call cc,bcm4908kernel,-Wall) - $(call cc,buffalo-enc buffalo-lib,-Wall) - $(call cc,buffalo-tag buffalo-lib,-Wall) - $(call cc,buffalo-tftp buffalo-lib,-Wall) - $(call cc,dgfirmware,-Wall) - $(call cc,dgn3500sum,-Wall) - $(call cc,dns313-header,-Wall) - $(call cc,edimax_fw_header,-Wall) - $(call cc,encode_crc,-Wall) - $(call cc,fix-u-media-header cyg_crc32,-Wall) - $(call cc,hcsmakeimage bcmalgo,-Wall) - $(call cc,imagetag imagetag_cmdline cyg_crc32,-Wall) - $(call cc,jcgimage,-lz -Wall) - $(call cc,lxlfw,-Wall) - $(call cc,lzma2eva,-lz -Wall) - $(call cc,makeamitbin,-Wall) - $(call cc,mkbrncmdline,-Wall) - $(call cc,mkbrnimg,-Wall) - $(call cc,mkbuffaloimg,-Wall) - $(call cc,mkcameofw,-Wall) - $(call cc,mkcasfw,-Wall) - $(call cc,mkchkimg,-Wall) - $(call cc,mkcsysimg,-Wall) - $(call cc,mkdapimg,-Wall) - $(call cc,mkdapimg2,-Wall) - $(call cc,mkdhpimg buffalo-lib,-Wall) - $(call cc,mkdlinkfw mkdlinkfw-lib,-lz -Wall --std=c99) - $(call cc,mkdniimg,-Wall) - $(call cc,mkedimaximg,-Wall) - $(call cc,mkfwimage,-lz -Wall -Werror -Wextra -D_FILE_OFFSET_BITS=64) - $(call cc,mkfwimage2,-lz -Wall) - $(call cc,mkheader_gemtek,-lz -Wall) - $(call cc,mkhilinkfw,-lcrypto -Wall) - $(call cc,mkmerakifw sha1,-Wall) - $(call cc,mkmerakifw-old,-Wall) - $(call cc,mkmylofw,-Wall) - $(call cc,mkplanexfw sha1,-Wall) - $(call cc,mkporayfw,-Wall) - $(call cc,mkrasimage,--std=gnu99 -Wall) - $(call cc,mkrtn56uimg,-lz -Wall) - $(call cc,mksenaofw md5,-Wall --std=gnu99) - $(call cc,mksercommfw,-Wall) - $(call cc,mktitanimg,-Wall) - $(call cc,mktplinkfw mktplinkfw-lib md5,-Wall -fgnu89-inline) - $(call cc,mktplinkfw2 mktplinkfw-lib md5,-Wall -fgnu89-inline) - $(call cc,mkwrggimg md5,-Wall) - $(call cc,mkwrgimg md5,-Wall) - $(call cc,mkzcfw cyg_crc32,-Wall) - $(call cc,mkzynfw,-Wall) - $(call cc,motorola-bin,-Wall) - $(call cc,nand_ecc,-Wall) - $(call cc,nec-enc,-Wall --std=gnu99) - $(call cc,osbridge-crc,-Wall) - $(call cc,oseama md5,-Wall) - $(call cc,otrx,-Wall) - $(call cc,pc1crypt) - $(call cc,ptgen cyg_crc32,-Wall) - $(call cc,seama md5,-Wall) - $(call cc,sign_dlink_ru md5,-Wall) - $(call cc,spw303v,-Wall) - $(call cc,srec2bin) - $(call cc,tplink-safeloader md5,-Wall --std=gnu99) - $(call cc,trx,-Wall) - $(call cc,trx2edips,-Wall) - $(call cc,trx2usr,-Wall) - $(call cc,uimage_padhdr,-Wall -lz) - $(call cc,wrt400n cyg_crc32,-Wall) - $(call cc,xorimage,-Wall) - $(call cc,zyimage,-Wall) - $(call cc,zytrx,-Wall) - $(call cc,zyxbcm,-Wall) -endef - -define Host/Install - $(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/* $(STAGING_DIR_HOST)/bin/ -endef - -$(eval $(call HostBuild))