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

lib-y:=
lib-$(CONFIG_ACPID)             += acpid.o
lib-$(CONFIG_BLKID)             += blkid.o
lib-$(CONFIG_DMESG)             += dmesg.o
lib-$(CONFIG_FBSET)             += fbset.o
lib-$(CONFIG_FDFLUSH)           += freeramdisk.o
lib-$(CONFIG_FDFORMAT)          += fdformat.o
lib-$(CONFIG_FDISK)             += fdisk.o
lib-$(CONFIG_FINDFS)            += findfs.o
lib-$(CONFIG_FREERAMDISK)       += freeramdisk.o
lib-$(CONFIG_FSCK_MINIX)        += fsck_minix.o
lib-$(CONFIG_GETOPT)            += getopt.o
lib-$(CONFIG_HEXDUMP)           += hexdump.o
lib-$(CONFIG_HWCLOCK)           += hwclock.o
lib-$(CONFIG_IPCRM)             += ipcrm.o
lib-$(CONFIG_IPCS)              += ipcs.o
lib-$(CONFIG_LOSETUP)           += losetup.o
lib-$(CONFIG_MDEV)              += mdev.o
lib-$(CONFIG_MKFS_MINIX)        += mkfs_minix.o
lib-$(CONFIG_MKSWAP)            += mkswap.o
lib-$(CONFIG_MORE)              += more.o
lib-$(CONFIG_MOUNT)             += mount.o
lib-$(CONFIG_PIVOT_ROOT)        += pivot_root.o
lib-$(CONFIG_RDATE)             += rdate.o
lib-$(CONFIG_RDEV)              += rdev.o
lib-$(CONFIG_READPROFILE)       += readprofile.o
lib-$(CONFIG_RTCWAKE)           += rtcwake.o
lib-$(CONFIG_SCRIPT)            += script.o
lib-$(CONFIG_SETARCH)           += setarch.o
lib-$(CONFIG_SWAPONOFF)         += swaponoff.o
lib-$(CONFIG_SWITCH_ROOT)       += switch_root.o
lib-$(CONFIG_UMOUNT)            += umount.o
