Signed-off-by: Ian Abbott <abbo...@mev.co.uk>
---
v2: Use `-` as `<source>` parameter of the `install_copy` calls.  Thanks
to Michael Olbrich for pointing this out.
---
 rules/exfatprogs.in   | 57 ++++++++++++++++++++++++++++++++
 rules/exfatprogs.make | 76 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 133 insertions(+)
 create mode 100644 rules/exfatprogs.in
 create mode 100644 rules/exfatprogs.make

diff --git a/rules/exfatprogs.in b/rules/exfatprogs.in
new file mode 100644
index 000000000..07658ff35
--- /dev/null
+++ b/rules/exfatprogs.in
@@ -0,0 +1,57 @@
+## SECTION=disk_and_file
+
+menuconfig EXFATPROGS
+       tristate
+       prompt "exfatprogs                    "
+       help
+         exFAT (Extensible File Allocation Table) is a filesystem
+         introduced by Microsoft in 2006 commonly used on USB flash
+         drives and SDXC cards.  It was proprietary until 2019 when
+         Microsoft published the exFAT specification and released the
+         patent to the Open Invention Network.
+
+         The exfatprogs package provides the filesystem utilities for
+         use with the exFAT filesystem.
+
+if EXFATPROGS
+
+config EXFATPROGS_DUMP_EXFAT
+       bool
+       prompt "dump.exfat"
+       help
+         Show on-disk information of an exFAT filesystem.
+
+config EXFATPROGS_EXFAT2IMG
+       bool
+       prompt "exfat2img"
+       help
+         Dump metadata of an exFAT filesystem.
+
+config EXFATPROGS_EXFATLABEL
+       bool
+       prompt "exfatlabel"
+       help
+         Get or set volume label or volume serial of an exFAT
+         filesystem.
+
+config EXFATPROGS_FSCK_EXFAT
+       bool
+       prompt "fsck.exfat"
+       help
+         Check an exFAT filesystem.
+
+config EXFATPROGS_MKFS_EXFAT
+       bool
+       prompt "mkfs.exfat"
+       help
+         Create an exFAT filesystem.
+
+config EXFATPROGS_TUNE_EXFAT
+       bool
+       prompt "tune.exfat"
+       help
+         Adjust tunable filesystem parameters on an exFAT filesystem.
+
+endif
+
+# vim: ft=kconfig noet tw=72 ts=8 sw=8
diff --git a/rules/exfatprogs.make b/rules/exfatprogs.make
new file mode 100644
index 000000000..789aa9f06
--- /dev/null
+++ b/rules/exfatprogs.make
@@ -0,0 +1,76 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2024 by Ian Abbott <abbo...@mev.co.uk>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_EXFATPROGS) += exfatprogs
+
+#
+# Paths and names
+#
+EXFATPROGS_VERSION             := 1.2.2
+EXFATPROGS_MD5                 := cbe2a6529b4972fc2cc260553f28f983
+EXFATPROGS                     := exfatprogs-$(EXFATPROGS_VERSION)
+EXFATPROGS_SUFFIX              := tar.xz
+EXFATPROGS_URL                 := 
https://github.com/exfatprogs/exfatprogs/releases/download/$(EXFATPROGS_VERSION)/$(EXFATPROGS).$(EXFATPROGS_SUFFIX)
+EXFATPROGS_SOURCE              := $(SRCDIR)/$(EXFATPROGS).$(EXFATPROGS_SUFFIX)
+EXFATPROGS_DIR                 := $(BUILDDIR)/$(EXFATPROGS)
+EXFATPROGS_LICENSE             := GPL-2.0
+EXFATPROGS_LICENSE_FILES       := 
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+EXFATPROGS_CONF_ENV    := $(CROSS_ENV)
+
+#
+# autoconf
+#
+EXFATPROGS_CONF_TOOL   := autoconf
+EXFATPROGS_CONF_OPT    :=  \
+       $(CROSS_AUTOCONF_USR)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/exfatprogs.targetinstall:
+       @$(call targetinfo)
+
+       @$(call install_init, exfatprogs)
+       @$(call install_fixup, exfatprogs,PRIORITY,optional)
+       @$(call install_fixup, exfatprogs,SECTION,base)
+       @$(call install_fixup, exfatprogs,AUTHOR,"Ian Abbott 
<abbo...@mev.co.uk>")
+       @$(call install_fixup, exfatprogs,DESCRIPTION,missing)
+
+ifdef PTXCONF_EXFATPROGS_DUMP_EXFAT
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/dump.exfat)
+endif
+ifdef PTXCONF_EXFATPROGS_EXFAT2IMG
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/exfat2img)
+endif
+ifdef PTXCONF_EXFATPROGS_EXFATLABEL
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/exfatlabel)
+endif
+ifdef PTXCONF_EXFATPROGS_FSCK_EXFAT
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/fsck.exfat)
+endif
+ifdef PTXCONF_EXFATPROGS_MKFS_EXFAT
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/mkfs.exfat)
+endif
+ifdef PTXCONF_EXFATPROGS_TUNE_EXFAT
+       @$(call install_copy, exfatprogs, 0, 0, 0755, -, /usr/sbin/tune.exfat)
+endif
+
+       @$(call install_finish, exfatprogs)
+
+       @$(call touch)
+
+# vim: syntax=make
-- 
2.43.0


Reply via email to