[Buildroot] [git commit] New package: gdisk
Peter Korsgaard
jacmet at sunsite.dk
Mon Apr 25 21:28:59 UTC 2011
commit: http://git.buildroot.net/buildroot/commit/?id=7d5a772f63660b84c7c755518fd91cb1a7c7d0c7
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
This includes two separately configurable parition manipulation
utilities: gdsik and sgdisk are to GPT disks what fdisk and sfdisk are
in MBR land.
[Peter: patch source, fix typos, fix partial build, pass correct flags]
Signed-off-by: Malte Starostik <m-starostik at versanet.de>
Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
---
package/Config.in | 1 +
package/gdisk/Config.in | 34 +++++++++++++++++++++++++++
package/gdisk/gdisk-0.6.14-uuid.h.patch | 22 +++++++++++++++++
package/gdisk/gdisk.mk | 39 +++++++++++++++++++++++++++++++
4 files changed, 96 insertions(+), 0 deletions(-)
create mode 100644 package/gdisk/Config.in
create mode 100644 package/gdisk/gdisk-0.6.14-uuid.h.patch
create mode 100644 package/gdisk/gdisk.mk
diff --git a/package/Config.in b/package/Config.in
index 76b2076..46ecbcb 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -165,6 +165,7 @@ source "package/eeprog/Config.in"
source "package/fconfig/Config.in"
source "package/fis/Config.in"
source "package/gadgetfs-test/Config.in"
+source "package/gdisk/Config.in"
source "package/genext2fs/Config.in"
source "package/genromfs/Config.in"
source "package/gpsd/Config.in"
diff --git a/package/gdisk/Config.in b/package/gdisk/Config.in
new file mode 100644
index 0000000..0daec5d
--- /dev/null
+++ b/package/gdisk/Config.in
@@ -0,0 +1,34 @@
+config BR2_PACKAGE_GDISK
+ bool "gdisk"
+ depends on BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP
+ help
+ GPT fdisk (consisting of the gdisk and sgdisk programs) is a
+ text-mode partitioning tool that works on Globally Unique Identifier
+ (GUID) Partition Table (GPT) disks, rather than on the more common
+ (through 2010) Master Boot Record (MBR) partition tables.
+
+ http://www.rodsbooks.com/gdisk/
+
+config BR2_PACKAGE_GDISK_GDISK
+ bool "interactive gdisk"
+ depends on BR2_PACKAGE_GDISK
+ select BR2_PACKAGE_E2FSPROGS
+ select BR2_PACKAGE_E2FSPROGS_LIBUUID
+ help
+ Install the interactive GUID partition table (GPT) manipulator
+ /usr/sbin/gdisk which is modelled after and quite similar in use
+ to the traditional MBR based fdisk tool.
+
+config BR2_PACKAGE_GDISK_SGDISK
+ bool "command line sgdisk"
+ depends on BR2_PACKAGE_GDISK
+ select BR2_PACKAGE_E2FSPROGS
+ select BR2_PACKAGE_E2FSPROGS_LIBUUID
+ select BR2_PACKAGE_POPT
+ help
+ Install the command-line GUID partition table (GPT) manipulator
+ /usr/sbin/sgdisk which is named after the traditional MBR based
+ sfdisk tool albeit with an entirely different option syntax.
+
+comment "gdisk requires a toolchain with LARGEFILE and C++ support enabled"
+ depends on !BR2_LARGEFILE || !BR2_INSTALL_LIBSTDCPP
diff --git a/package/gdisk/gdisk-0.6.14-uuid.h.patch b/package/gdisk/gdisk-0.6.14-uuid.h.patch
new file mode 100644
index 0000000..ba447a1
--- /dev/null
+++ b/package/gdisk/gdisk-0.6.14-uuid.h.patch
@@ -0,0 +1,22 @@
+[PATCH] Don't hardcode uuid.h location
+
+Breaks cross compilation.
+
+Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
+---
+ guid.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: gdisk-0.6.14/guid.h
+===================================================================
+--- gdisk-0.6.14.orig/guid.h
++++ gdisk-0.6.14/guid.h
+@@ -22,7 +22,7 @@
+ #ifdef _WIN32
+ typedef unsigned char my_uuid_t[16];
+ #else
+-#include </usr/include/uuid/uuid.h>
++#include <uuid/uuid.h>
+ typedef uuid_t my_uuid_t;
+ #endif
+
diff --git a/package/gdisk/gdisk.mk b/package/gdisk/gdisk.mk
new file mode 100644
index 0000000..ef4627d
--- /dev/null
+++ b/package/gdisk/gdisk.mk
@@ -0,0 +1,39 @@
+#############################################################
+#
+# gdisk
+#
+#############################################################
+
+GDISK_VERSION = 0.6.14
+GDISK_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/gptfdisk
+GDISK_SOURCE = gdisk-$(GDISK_VERSION).tgz
+
+GDISK_TARGETS_$(BR2_PACKAGE_GDISK_GDISK) += gdisk
+GDISK_TARGETS_$(BR2_PACKAGE_GDISK_SGDISK) += sgdisk
+
+ifneq ($(GDISK_TARGETS_y),)
+
+GDISK_DEPENDENCIES += e2fsprogs
+ifeq ($(BR2_PACKAGE_GDISK_SGDISK),y)
+ GDISK_DEPENDENCIES += popt
+endif
+
+
+define GDISK_BUILD_CMDS
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" \
+ -C $(@D) $(GDISK_TARGETS_y)
+endef
+
+define GDISK_INSTALL_TARGET_CMDS
+ for i in $(GDISK_TARGETS_y); do \
+ $(INSTALL) -D $(@D)/$$i $(TARGET_DIR)/usr/sbin/; \
+ done
+endef
+
+define GDISK_UNINSTALL_TARGET_CMDS
+ rm -f $(addprefix $(TARGET_DIR)/usr/sbin/,$(GDISK_TARGETS_y))
+endef
+
+endif
+
+$(eval $(call GENTARGETS,package,gdisk))
--
1.7.3.4
More information about the buildroot
mailing list