# SPDX-License-Identifier: GPL-2.0-only # # Copyright (C) 2006-2013 OpenWrt.org menu "Target Images" menuconfig TARGET_ROOTFS_INITRAMFS bool "ramdisk" default y if USES_INITRAMFS help Embed the root filesystem into the kernel (initramfs). choice prompt "Compression" default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ath79_mikrotik default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_lantiq default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips default TARGET_INITRAMFS_COMPRESSION_XZ if USES_SEPARATE_INITRAMFS default TARGET_INITRAMFS_COMPRESSION_NONE depends on TARGET_ROOTFS_INITRAMFS help Select ramdisk compression. config TARGET_INITRAMFS_COMPRESSION_NONE bool "none" config TARGET_INITRAMFS_COMPRESSION_GZIP bool "gzip" config TARGET_INITRAMFS_COMPRESSION_BZIP2 bool "bzip2" config TARGET_INITRAMFS_COMPRESSION_LZMA bool "lzma" config TARGET_INITRAMFS_COMPRESSION_LZO depends on !TARGET_ROOTFS_INITRAMFS_SEPARATE bool "lzo" config TARGET_INITRAMFS_COMPRESSION_LZ4 depends on !TARGET_ROOTFS_INITRAMFS_SEPARATE bool "lz4" config TARGET_INITRAMFS_COMPRESSION_XZ bool "xz" config TARGET_INITRAMFS_COMPRESSION_ZSTD depends on !LINUX_5_4 && !LINUX_4_19 bool "zstd" endchoice config EXTERNAL_CPIO string prompt "Use external cpio" if TARGET_ROOTFS_INITRAMFS default "" help Kernel uses specified external cpio as INITRAMFS_SOURCE. config TARGET_INITRAMFS_FORCE bool "Force" depends on TARGET_ROOTFS_INITRAMFS default n help Ignore the initramfs passed by the bootloader. config TARGET_ROOTFS_INITRAMFS_SEPARATE bool "separate ramdisk" depends on USES_SEPARATE_INITRAMFS && TARGET_ROOTFS_INITRAMFS && !TARGET_INITRAMFS_FORCE default y if USES_SEPARATE_INITRAMFS help Generate separate initrd.cpio instead of embedding it. This is useful for generating images with a dedicated ramdisk e.g. in U-Boot's uImage and uImage.FIT formats. comment "Root filesystem archives" config TARGET_ROOTFS_CPIOGZ bool "cpio.gz" default y if USES_CPIOGZ help Build a compressed cpio archive of the root filesystem. config TARGET_ROOTFS_TARGZ bool "tar.gz" default y if USES_TARGZ help Build a compressed tar archive of the root filesystem. comment "Root filesystem images" menuconfig TARGET_ROOTFS_EXT4FS bool "ext4" default y if USES_EXT4 help Build an ext4 root filesystem. config TARGET_EXT4_RESERVED_PCT int "Percentage of reserved blocks in root filesystem" depends on TARGET_ROOTFS_EXT4FS default 0 help Select the percentage of reserved blocks in the root filesystem. choice prompt "Root filesystem block size" default TARGET_EXT4_BLOCKSIZE_4K depends on TARGET_ROOTFS_EXT4FS help Select the block size of the root filesystem. config TARGET_EXT4_BLOCKSIZE_4K bool "4k" config TARGET_EXT4_BLOCKSIZE_2K bool "2k" config TARGET_EXT4_BLOCKSIZE_1K bool "1k" endchoice config TARGET_EXT4_BLOCKSIZE int default 4096 if TARGET_EXT4_BLOCKSIZE_4K default 2048 if TARGET_EXT4_BLOCKSIZE_2K default 1024 if TARGET_EXT4_BLOCKSIZE_1K depends on TARGET_ROOTFS_EXT4FS config TARGET_EXT4_JOURNAL bool "Create a journaling filesystem" depends on TARGET_ROOTFS_EXT4FS default n help Create an ext4 filesystem with a journal. config TARGET_ROOTFS_JFFS2 bool "jffs2" depends on USES_JFFS2 help Build a JFFS2 root filesystem. config TARGET_ROOTFS_JFFS2_NAND bool "jffs2 for NAND" default y if USES_JFFS2_NAND depends on USES_JFFS2_NAND help Build a JFFS2 root filesystem for NAND flash. menuconfig TARGET_ROOTFS_SQUASHFS bool "squashfs" default y if USES_SQUASHFS help Build a squashfs-lzma root filesystem. config TARGET_SQUASHFS_BLOCK_SIZE int "Block size (in KiB)" depends on TARGET_ROOTFS_SQUASHFS default 64 if LOW_MEMORY_FOOTPRINT default 1024 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT) default 256 menuconfig TARGET_ROOTFS_UBIFS bool "ubifs" default y if USES_UBIFS depends on USES_UBIFS help Build a UBIFS root filesystem. choice prompt "compression" default TARGET_UBIFS_COMPRESSION_ZLIB depends on TARGET_ROOTFS_UBIFS help Select compression type config TARGET_UBIFS_COMPRESSION_NONE bool "none" config TARGET_UBIFS_COMPRESSION_LZO bool "lzo" config TARGET_UBIFS_COMPRESSION_ZLIB bool "zlib" endchoice config TARGET_UBIFS_FREE_SPACE_FIXUP bool "free space fixup" if TARGET_ROOTFS_UBIFS default y help The filesystem free space has to be fixed up on first mount. config TARGET_UBIFS_JOURNAL_SIZE string prompt "journal size" if TARGET_ROOTFS_UBIFS default "" config GRUB_IMAGES bool "Build GRUB images (Linux x86 or x86_64 host only)" depends on TARGET_x86 depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS select PACKAGE_grub2 select PACKAGE_grub2-bios-setup default y config GRUB_EFI_IMAGES bool "Build GRUB EFI images (Linux x86 or x86_64 host only)" depends on TARGET_x86 depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS select PACKAGE_grub2 select PACKAGE_grub2-efi select PACKAGE_grub2-bios-setup select PACKAGE_kmod-fs-vfat default y config GRUB_CONSOLE bool "Use Console Terminal (in addition to Serial)" depen
/*
* netlink/data.h Abstract Data
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation version 2.1
* of the License.
*
* Copyright (c) 2003-2008 Thomas Graf <tgraf@suug.ch>
*/
#ifndef NETLINK_DATA_H_
#define NETLINK_DATA_H_
#include <netlink/netlink.h>
#ifdef __cplusplus
extern "C" {
#endif
struct nl_data;
/* General */
extern struct nl_data * nl_data_alloc(void *, size_t);
extern struct nl_data * nl_data_alloc_attr(struct nlattr *);
extern struct nl_data * nl_data_clone(struct nl_data *);
extern int nl_data_append(struct nl_data *, void *, size_t);
extern void nl_data_free(struct nl_data *);
/* Access Functions */
extern void * nl_data_get(struct nl_data *);
extern size_t nl_data_get_size(struct nl_data *);
/* Misc */
extern int nl_data_cmp(struct nl_data *, struct nl_data *);
#ifdef __cplusplus
}
#endif
#endif