# Makefile for busybox
#
# Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org>
#
# Licensed under GPLv2, see file LICENSE in this source tree.

lib-y:=

INSERT

lib-$(CONFIG_CHATTR) += chattr.o e2fs_lib.o
lib-$(CONFIG_LSATTR) += lsattr.o e2fs_lib.o

lib-$(CONFIG_FSCK)    += fsck.o
lib-$(CONFIG_TUNE2FS) += tune2fs.o
