mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 05:36:47 +00:00
parted: add metafile support, cleanups
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
32a4f72f47
commit
f002cb2c3e
@ -2,9 +2,6 @@
|
||||
|
||||
. config/options $1
|
||||
|
||||
$SCRIPTS/build toolchain
|
||||
$SCRIPTS/build util-linux-ng
|
||||
|
||||
cd $PKG_BUILD
|
||||
./configure --host=$TARGET_NAME \
|
||||
--build=$HOST_NAME \
|
||||
|
@ -2,8 +2,6 @@
|
||||
|
||||
. config/options $1
|
||||
|
||||
$SCRIPTS/install util-linux-ng
|
||||
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp $PKG_BUILD/parted/.libs/parted $INSTALL/usr/bin
|
||||
cp $PKG_BUILD/partprobe/.libs/partprobe $INSTALL/usr/bin
|
||||
|
14
packages/sysutils/parted/meta
Normal file
14
packages/sysutils/parted/meta
Normal file
@ -0,0 +1,14 @@
|
||||
PKG_NAME="parted"
|
||||
PKG_VERSION="2.3"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.gnu.org/software/parted/"
|
||||
PKG_URL="http://ftp.gnu.org/gnu/parted/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS="util-linux-ng"
|
||||
PKG_BUILD_DEPENDS="toolchain util-linux-ng"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="system"
|
||||
PKG_SHORTDESC="parted: GNU partition editor"
|
||||
PKG_LONGDESC="GNU Parted is a program for creating, destroying, resizing, checking and copying partitions, and the file systems on them. This is useful for creating space for new operating systems, reorganising disk usage, copying data between hard disks and disk imaging."
|
||||
PKG_IS_ADDON="no"
|
@ -1,165 +0,0 @@
|
||||
diff -rup parted-1.8.8/include/parted/disk.h parted-1.8.8_atv/include/parted/disk.h
|
||||
--- parted-1.8.8/include/parted/disk.h 2007-08-09 11:20:33.000000000 -0400
|
||||
+++ parted-1.8.8_atv/include/parted/disk.h 2008-01-11 23:28:45.000000000 -0500
|
||||
@@ -52,10 +52,11 @@ enum _PedPartitionFlag {
|
||||
PED_PARTITION_HPSERVICE=8,
|
||||
PED_PARTITION_PALO=9,
|
||||
PED_PARTITION_PREP=10,
|
||||
- PED_PARTITION_MSFT_RESERVED=11
|
||||
+ PED_PARTITION_MSFT_RESERVED=11,
|
||||
+ PED_PARTITION_APPLE_TV_RECOVERY=12
|
||||
};
|
||||
#define PED_PARTITION_FIRST_FLAG PED_PARTITION_BOOT
|
||||
-#define PED_PARTITION_LAST_FLAG PED_PARTITION_MSFT_RESERVED
|
||||
+#define PED_PARTITION_LAST_FLAG PED_PARTITION_APPLE_TV_RECOVERY
|
||||
|
||||
enum _PedDiskTypeFeature {
|
||||
PED_DISK_TYPE_EXTENDED=1, /**< supports extended partitions */
|
||||
diff -rup parted-1.8.8/libparted/disk.c parted-1.8.8_atv/libparted/disk.c
|
||||
--- parted-1.8.8/libparted/disk.c 2007-08-09 14:47:57.000000000 -0400
|
||||
+++ parted-1.8.8_atv/libparted/disk.c 2008-01-11 23:28:45.000000000 -0500
|
||||
@@ -2181,6 +2181,8 @@ ped_partition_flag_get_name (PedPartitio
|
||||
return N_("prep");
|
||||
case PED_PARTITION_MSFT_RESERVED:
|
||||
return N_("msftres");
|
||||
+ case PED_PARTITION_APPLE_TV_RECOVERY:
|
||||
+ return N_("atvrecv");
|
||||
|
||||
default:
|
||||
ped_exception_throw (
|
||||
diff -rup parted-1.8.8/libparted/labels/gpt.c parted-1.8.8_atv/libparted/labels/gpt.c
|
||||
--- parted-1.8.8/libparted/labels/gpt.c 2007-07-31 13:36:57.000000000 -0400
|
||||
+++ parted-1.8.8_atv/libparted/labels/gpt.c 2008-01-11 23:28:45.000000000 -0500
|
||||
@@ -122,6 +122,10 @@ typedef struct {
|
||||
((efi_guid_t) { PED_CPU_TO_LE32 (0x48465300), PED_CPU_TO_LE16 (0x0000), \
|
||||
PED_CPU_TO_LE16 (0x11AA), 0xaa, 0x11, \
|
||||
{ 0x00, 0x30, 0x65, 0x43, 0xEC, 0xAC }})
|
||||
+#define PARTITION_APPLE_TV_RECOVERY_GUID \
|
||||
+ ((efi_guid_t) { PED_CPU_TO_LE32 (0x5265636F), PED_CPU_TO_LE16 (0x7665), \
|
||||
+ PED_CPU_TO_LE16 (0x11AA), 0xaa, 0x11, \
|
||||
+ { 0x00, 0x30, 0x65, 0x43, 0xEC, 0xAC }})
|
||||
|
||||
struct __attribute__ ((packed)) _GuidPartitionTableHeader_t {
|
||||
uint64_t Signature;
|
||||
@@ -248,6 +252,7 @@ typedef struct _GPTPartitionData {
|
||||
int hp_service;
|
||||
int hidden;
|
||||
int msftres;
|
||||
+ int atvrecv;
|
||||
} GPTPartitionData;
|
||||
|
||||
static PedDiskType gpt_disk_type;
|
||||
@@ -753,7 +758,8 @@ _parse_part_entry (PedDisk* disk, GuidPa
|
||||
|
||||
gpt_part_data->lvm = gpt_part_data->raid
|
||||
= gpt_part_data->boot = gpt_part_data->hp_service
|
||||
- = gpt_part_data->hidden = gpt_part_data->msftres = 0;
|
||||
+ = gpt_part_data->hidden = gpt_part_data->msftres
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
|
||||
if (pte->Attributes.RequiredToFunction & 0x1)
|
||||
gpt_part_data->hidden = 1;
|
||||
@@ -768,6 +774,8 @@ _parse_part_entry (PedDisk* disk, GuidPa
|
||||
gpt_part_data->hp_service = 1;
|
||||
else if (!guid_cmp (gpt_part_data->type, PARTITION_MSFT_RESERVED_GUID))
|
||||
gpt_part_data->msftres = 1;
|
||||
+ else if (!guid_cmp (gpt_part_data->type, PARTITION_APPLE_TV_RECOVERY_GUID))
|
||||
+ gpt_part_data->atvrecv = 1;
|
||||
|
||||
return part;
|
||||
}
|
||||
@@ -1133,6 +1141,7 @@ gpt_partition_new (const PedDisk* disk,
|
||||
gpt_part_data->hp_service = 0;
|
||||
gpt_part_data->hidden = 0;
|
||||
gpt_part_data->msftres = 0;
|
||||
+ gpt_part_data->atvrecv = 0;
|
||||
uuid_generate ((unsigned char*) &gpt_part_data->uuid);
|
||||
swap_uuid_and_efi_guid((unsigned char*)(&gpt_part_data->uuid));
|
||||
strcpy (gpt_part_data->name, "");
|
||||
@@ -1232,6 +1241,10 @@ gpt_partition_set_system (PedPartition*
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
+ if (gpt_part_data->atvrecv) {
|
||||
+ gpt_part_data->type = PARTITION_APPLE_TV_RECOVERY_GUID;
|
||||
+ return 1;
|
||||
+ }
|
||||
|
||||
gpt_part_data->type = PARTITION_BASIC_DATA_GUID;
|
||||
return 1;
|
||||
@@ -1307,7 +1320,8 @@ gpt_partition_set_flag(PedPartition *par
|
||||
gpt_part_data->raid
|
||||
= gpt_part_data->lvm
|
||||
= gpt_part_data->hp_service
|
||||
- = gpt_part_data->msftres = 0;
|
||||
+ = gpt_part_data->msftres
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
return gpt_partition_set_system (part, part->fs_type);
|
||||
case PED_PARTITION_RAID:
|
||||
gpt_part_data->raid = state;
|
||||
@@ -1315,7 +1329,8 @@ gpt_partition_set_flag(PedPartition *par
|
||||
gpt_part_data->boot
|
||||
= gpt_part_data->lvm
|
||||
= gpt_part_data->hp_service
|
||||
- = gpt_part_data->msftres = 0;
|
||||
+ = gpt_part_data->msftres
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
return gpt_partition_set_system (part, part->fs_type);
|
||||
case PED_PARTITION_LVM:
|
||||
gpt_part_data->lvm = state;
|
||||
@@ -1323,7 +1338,8 @@ gpt_partition_set_flag(PedPartition *par
|
||||
gpt_part_data->boot
|
||||
= gpt_part_data->raid
|
||||
= gpt_part_data->hp_service
|
||||
- = gpt_part_data->msftres = 0;
|
||||
+ = gpt_part_data->msftres
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
return gpt_partition_set_system (part, part->fs_type);
|
||||
case PED_PARTITION_HPSERVICE:
|
||||
gpt_part_data->hp_service = state;
|
||||
@@ -1331,7 +1347,8 @@ gpt_partition_set_flag(PedPartition *par
|
||||
gpt_part_data->boot
|
||||
= gpt_part_data->raid
|
||||
= gpt_part_data->lvm
|
||||
- = gpt_part_data->msftres = 0;
|
||||
+ = gpt_part_data->msftres
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
return gpt_partition_set_system (part, part->fs_type);
|
||||
case PED_PARTITION_MSFT_RESERVED:
|
||||
gpt_part_data->msftres = state;
|
||||
@@ -1339,7 +1356,17 @@ gpt_partition_set_flag(PedPartition *par
|
||||
gpt_part_data->boot
|
||||
= gpt_part_data->raid
|
||||
= gpt_part_data->lvm
|
||||
- = gpt_part_data->hp_service = 0;
|
||||
+ = gpt_part_data->hp_service
|
||||
+ = gpt_part_data->atvrecv = 0;
|
||||
+ return gpt_partition_set_system (part, part->fs_type);
|
||||
+ case PED_PARTITION_APPLE_TV_RECOVERY:
|
||||
+ gpt_part_data->atvrecv = state;
|
||||
+ if (state)
|
||||
+ gpt_part_data->boot
|
||||
+ = gpt_part_data->raid
|
||||
+ = gpt_part_data->lvm
|
||||
+ = gpt_part_data->hp_service
|
||||
+ = gpt_part_data->msftres = 0;
|
||||
return gpt_partition_set_system (part, part->fs_type);
|
||||
case PED_PARTITION_HIDDEN:
|
||||
gpt_part_data->hidden = state;
|
||||
@@ -1371,6 +1398,8 @@ gpt_partition_get_flag(const PedPartitio
|
||||
return gpt_part_data->hp_service;
|
||||
case PED_PARTITION_MSFT_RESERVED:
|
||||
return gpt_part_data->msftres;
|
||||
+ case PED_PARTITION_APPLE_TV_RECOVERY:
|
||||
+ return gpt_part_data->atvrecv;
|
||||
case PED_PARTITION_HIDDEN:
|
||||
return gpt_part_data->hidden;
|
||||
case PED_PARTITION_SWAP:
|
||||
@@ -1392,6 +1421,7 @@ gpt_partition_is_flag_available(const Pe
|
||||
case PED_PARTITION_BOOT:
|
||||
case PED_PARTITION_HPSERVICE:
|
||||
case PED_PARTITION_MSFT_RESERVED:
|
||||
+ case PED_PARTITION_APPLE_TV_RECOVERY:
|
||||
case PED_PARTITION_HIDDEN:
|
||||
return 1;
|
||||
case PED_PARTITION_SWAP:
|
@ -1 +0,0 @@
|
||||
http://ftp.gnu.org/gnu/parted/parted-2.3.tar.gz
|
Loading…
x
Reference in New Issue
Block a user