blob: f7dbba30f21f187fe89008b64311962233ccc267 [file] [log] [blame]
Mike Frysingerd89e5e62005-04-24 05:15:12 +00001# Makefile for busybox
2#
3# Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org>
4#
Mike Frysinger0d4ee682005-09-24 06:01:57 +00005# Licensed under the GPL v2, see the file LICENSE in this tarball.
Mike Frysingerd89e5e62005-04-24 05:15:12 +00006
7E2FSPROGS_AR:=e2fsprogs.a
Rob Landleye1d96332005-08-24 00:41:52 +00008
Mike Frysinger51a43b42005-09-24 07:11:16 +00009E2FSPROGS_DIR:=$(top_builddir)/e2fsprogs
Rob Landleye1d96332005-08-24 00:41:52 +000010
Mike Frysinger51a43b42005-09-24 07:11:16 +000011E2FSPROGS_CFLAGS := -I$(E2FSPROGS_DIR) -include $(E2FSPROGS_DIR)/e2fsbb.h
Eric Andersen9cc7f322005-05-11 23:20:09 +000012
"Vladimir N. Oleynik"b71e6022005-09-19 13:48:39 +000013BLKID_SRC := cache.c dev.c devname.c devno.c blkid_getsize.c \
"Vladimir N. Oleynik"3978e552005-09-27 11:43:29 +000014 probe.c read.c resolve.c save.c tag.c resolve.c
Mike Frysinger174808c2005-06-11 01:14:09 +000015BLKID_SRCS := $(patsubst %,blkid/%, $(BLKID_SRC))
16BLKID_OBJS := $(patsubst %.c,%.o, $(BLKID_SRCS))
17
"Vladimir N. Oleynik"3978e552005-09-27 11:43:29 +000018E2FSCK_SRCS := e2fsck.c
Mike Frysinger51a43b42005-09-24 07:11:16 +000019E2FSCK_OBJS := $(patsubst %.c,%.o, $(E2FSCK_SRCS))
20
Mike Frysinger174808c2005-06-11 01:14:09 +000021E2P_SRC := fgetsetflags.c fgetsetversion.c pf.c iod.c mntopts.c \
"Vladimir N. Oleynik"3978e552005-09-27 11:43:29 +000022 feature.c ls.c uuid.c pe.c ostype.c ps.c hashstr.c \
23 parse_num.c
Mike Frysingerf3d28842005-06-11 00:27:50 +000024E2P_SRCS := $(patsubst %,e2p/%, $(E2P_SRC))
25E2P_OBJS := $(patsubst %.c,%.o, $(E2P_SRCS))
Eric Andersen9cc7f322005-05-11 23:20:09 +000026
Mike Frysinger174808c2005-06-11 01:14:09 +000027EXT2FS_SRC := gen_bitmap.c bitops.c ismounted.c mkjournal.c unix_io.c \
"Vladimir N. Oleynik"3978e552005-09-27 11:43:29 +000028 rw_bitmaps.c initialize.c bitmaps.c block.c \
29 ind_block.c inode.c freefs.c alloc_stats.c closefs.c \
30 openfs.c io_manager.c finddev.c read_bb.c alloc.c badblocks.c \
31 getsize.c getsectsize.c alloc_tables.c read_bb_file.c mkdir.c \
32 bb_inode.c newdir.c alloc_sb.c lookup.c dirblock.c expanddir.c \
33 dir_iterate.c link.c res_gdt.c icount.c get_pathname.c dblist.c \
34 dirhash.c version.c flushb.c unlink.c check_desc.c valid_blk.c \
35 ext_attr.c bmap.c dblist_dir.c ext2fs_inline.c
Mike Frysinger174808c2005-06-11 01:14:09 +000036EXT2FS_SRCS := $(patsubst %,ext2fs/%, $(EXT2FS_SRC))
37EXT2FS_OBJS := $(patsubst %.c,%.o, $(EXT2FS_SRCS))
38
39UUID_SRC := compare.c gen_uuid.c pack.c parse.c unpack.c unparse.c \
"Vladimir N. Oleynik"3978e552005-09-27 11:43:29 +000040 uuid_time.c
Mike Frysinger174808c2005-06-11 01:14:09 +000041UUID_SRCS := $(patsubst %,uuid/%, $(UUID_SRC))
42UUID_OBJS := $(patsubst %.c,%.o, $(UUID_SRCS))
43
Mike Frysingerd89e5e62005-04-24 05:15:12 +000044E2FSPROGS-:=
Mike Frysinger174808c2005-06-11 01:14:09 +000045E2FSPROGS-$(CONFIG_CHATTR) += chattr.o $(E2P_OBJS)
Mike Frysinger7ad97802005-09-25 05:18:04 +000046E2FSPROGS-$(CONFIG_E2FSCK) += e2fsck.o util.o $(BLKID_OBJS) $(E2FSCK_OBJS)
Mike Frysinger51a43b42005-09-24 07:11:16 +000047E2FSPROGS-$(CONFIG_FSCK) += fsck.o base_device.o
Mike Frysinger174808c2005-06-11 01:14:09 +000048E2FSPROGS-$(CONFIG_LSATTR) += lsattr.o $(E2P_OBJS)
Mike Frysinger6447ac02005-06-11 05:29:40 +000049E2FSPROGS-$(CONFIG_MKE2FS) += mke2fs.o util.o $(E2P_OBJS) $(BLKID_OBJS) $(EXT2FS_OBJS) $(UUID_OBJS)
Mike Frysinger174808c2005-06-11 01:14:09 +000050E2FSPROGS-$(CONFIG_TUNE2FS) += tune2fs.o util.o $(E2P_OBJS) $(BLKID_OBJS) $(EXT2FS_OBJS) $(UUID_OBJS)
Mike Frysingerd89e5e62005-04-24 05:15:12 +000051
Mike Frysinger51a43b42005-09-24 07:11:16 +000052libraries-y+=$(E2FSPROGS_DIR)/$(E2FSPROGS_AR)
Mike Frysingerd89e5e62005-04-24 05:15:12 +000053
Eric Andersen9cc7f322005-05-11 23:20:09 +000054
Mike Frysinger51a43b42005-09-24 07:11:16 +000055$(E2FSPROGS_DIR)/$(E2FSPROGS_AR): $(patsubst %,$(E2FSPROGS_DIR)/%, $(E2FSPROGS-y))
56 $(AR) $(ARFLAGS) $@ $(patsubst %,$(E2FSPROGS_DIR)/%, $(E2FSPROGS-y))
Mike Frysingerd89e5e62005-04-24 05:15:12 +000057
Mike Frysinger51a43b42005-09-24 07:11:16 +000058$(E2FSPROGS_DIR)/%.o: $(E2FSPROGS_DIR)/%.c
Mike Frysinger7ffce0c2005-06-11 00:45:50 +000059 $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(E2FSPROGS_CFLAGS) -c -o $@ $<