package third_party.e2fsprogs

@Build(stage=2,script="$(EXTERNAL_MAKE)")
@BuildArtifactPath(cppflags="-I$(EXTERNAL_BUILD_DIR)/third_party/e2fsprogs/core/install/include")
static module core {
	@AddPrefix("^BUILD/extbld/^MOD_PATH/install/lib")
	source "libsupport.a", "libext2fs.a", "libcom_err.a", "libblkid.a", "libuuid.a", "libe2p.a"

	@NoRuntime depends embox.compat.libc.all
	@NoRuntime depends embox.compat.libc.str_dup
	@NoRuntime depends embox.compat.posix.util.time
	@NoRuntime depends embox.compat.posix.util.sleep
	@NoRuntime depends embox.compat.posix.util.gettimeofday
	@NoRuntime depends embox.compat.posix.proc.uid
}

@App
@AutoCmd
@Cmd(name = "e2freefrag",
     help = "report filesystem free-space fragmentation",
     man  = "")
@Build(stage=2,script="true")
module e2freefrag {
	@AddPrefix("^BUILD/extbld/^MOD_PATH/../core/install/sbin")
	source "e2freefrag"

	@NoRuntime depends core
}

@App
@AutoCmd
@Cmd(name = "dumpe2fs",
     help = "List the control structures of a second extended filesystem",
     man  = "")
@Build(stage=2,script="true")
module dumpe2fs {
	@AddPrefix("^BUILD/extbld/^MOD_PATH/../core/install/sbin")
	source "dumpe2fs"

	@NoRuntime depends core
}

@App
@AutoCmd
@Cmd(name = "mke2fs",
     help = "Make a ext2fs filesystem",
     man  = "")
@Build(stage=2,script="true")
module mke2fs {
	@AddPrefix("^BUILD/extbld/^MOD_PATH/../core/install/sbin")
	source "mke2fs"

	@NoRuntime depends core
}

@App
@AutoCmd
@Cmd(name = "e2fsck",
     help = "a consistency checker for the new extended file system",
     man  = "")
@Build(stage=2,script="true")
module e2fsck {
	@AddPrefix("^BUILD/extbld/^MOD_PATH/../core/install/sbin")
	source "*e2fsck"

	@NoRuntime depends core
}
