Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 1 | # Makefile for busybox |
| 2 | # |
| 3 | # Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org> |
| 4 | # |
| 5 | # This program is free software; you can redistribute it and/or modify |
| 6 | # it under the terms of the GNU General Public License as published by |
| 7 | # the Free Software Foundation; either version 2 of the License, or |
| 8 | # (at your option) any later version. |
| 9 | # |
| 10 | # This program is distributed in the hope that it will be useful, |
| 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 13 | # General Public License for more details. |
| 14 | # |
| 15 | # You should have received a copy of the GNU General Public License |
| 16 | # along with this program; if not, write to the Free Software |
| 17 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| 18 | # |
| 19 | |
| 20 | E2FSPROGS_AR:=e2fsprogs.a |
Rob Landley | e1d9633 | 2005-08-24 00:41:52 +0000 | [diff] [blame] | 21 | |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 22 | E2FSPROGS_DIR:=$(top_builddir)/e2fsprogs/ |
Rob Landley | e1d9633 | 2005-08-24 00:41:52 +0000 | [diff] [blame] | 23 | |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 24 | srcdir=$(top_srcdir)/e2fsprogs |
| 25 | |
Rob Landley | e1d9633 | 2005-08-24 00:41:52 +0000 | [diff] [blame] | 26 | E2FSPROGS_CFLAGS := -I$(srcdir) -include $(srcdir)/e2fsbb.h |
Eric Andersen | 9cc7f32 | 2005-05-11 23:20:09 +0000 | [diff] [blame] | 27 | |
"Vladimir N. Oleynik" | b71e602 | 2005-09-19 13:48:39 +0000 | [diff] [blame^] | 28 | BLKID_SRC := cache.c dev.c devname.c devno.c blkid_getsize.c \ |
| 29 | probe.c read.c resolve.c save.c tag.c resolve.c |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 30 | BLKID_SRCS := $(patsubst %,blkid/%, $(BLKID_SRC)) |
| 31 | BLKID_OBJS := $(patsubst %.c,%.o, $(BLKID_SRCS)) |
| 32 | |
| 33 | E2P_SRC := fgetsetflags.c fgetsetversion.c pf.c iod.c mntopts.c \ |
"Vladimir N. Oleynik" | b71e602 | 2005-09-19 13:48:39 +0000 | [diff] [blame^] | 34 | feature.c ls.c uuid.c pe.c ostype.c ps.c hashstr.c \ |
| 35 | parse_num.c |
Mike Frysinger | f3d2884 | 2005-06-11 00:27:50 +0000 | [diff] [blame] | 36 | E2P_SRCS := $(patsubst %,e2p/%, $(E2P_SRC)) |
| 37 | E2P_OBJS := $(patsubst %.c,%.o, $(E2P_SRCS)) |
Eric Andersen | 9cc7f32 | 2005-05-11 23:20:09 +0000 | [diff] [blame] | 38 | |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 39 | EXT2FS_SRC := gen_bitmap.c bitops.c ismounted.c mkjournal.c unix_io.c \ |
"Vladimir N. Oleynik" | b71e602 | 2005-09-19 13:48:39 +0000 | [diff] [blame^] | 40 | rw_bitmaps.c initialize.c bitmaps.c block.c \ |
| 41 | ind_block.c inode.c freefs.c alloc_stats.c closefs.c \ |
| 42 | openfs.c io_manager.c finddev.c read_bb.c alloc.c badblocks.c \ |
| 43 | getsize.c getsectsize.c alloc_tables.c read_bb_file.c mkdir.c \ |
| 44 | bb_inode.c newdir.c alloc_sb.c lookup.c dirblock.c expanddir.c \ |
| 45 | dir_iterate.c link.c res_gdt.c |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 46 | EXT2FS_SRCS := $(patsubst %,ext2fs/%, $(EXT2FS_SRC)) |
| 47 | EXT2FS_OBJS := $(patsubst %.c,%.o, $(EXT2FS_SRCS)) |
| 48 | |
| 49 | UUID_SRC := compare.c gen_uuid.c pack.c parse.c unpack.c unparse.c \ |
"Vladimir N. Oleynik" | b71e602 | 2005-09-19 13:48:39 +0000 | [diff] [blame^] | 50 | uuid_time.c |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 51 | UUID_SRCS := $(patsubst %,uuid/%, $(UUID_SRC)) |
| 52 | UUID_OBJS := $(patsubst %.c,%.o, $(UUID_SRCS)) |
| 53 | |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 54 | E2FSPROGS-:= |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 55 | E2FSPROGS-$(CONFIG_CHATTR) += chattr.o $(E2P_OBJS) |
| 56 | E2FSPROGS-$(CONFIG_LSATTR) += lsattr.o $(E2P_OBJS) |
Mike Frysinger | 6447ac0 | 2005-06-11 05:29:40 +0000 | [diff] [blame] | 57 | E2FSPROGS-$(CONFIG_MKE2FS) += mke2fs.o util.o $(E2P_OBJS) $(BLKID_OBJS) $(EXT2FS_OBJS) $(UUID_OBJS) |
Mike Frysinger | 174808c | 2005-06-11 01:14:09 +0000 | [diff] [blame] | 58 | E2FSPROGS-$(CONFIG_TUNE2FS) += tune2fs.o util.o $(E2P_OBJS) $(BLKID_OBJS) $(EXT2FS_OBJS) $(UUID_OBJS) |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 59 | |
| 60 | libraries-y+=$(E2FSPROGS_DIR)$(E2FSPROGS_AR) |
| 61 | |
Eric Andersen | 9cc7f32 | 2005-05-11 23:20:09 +0000 | [diff] [blame] | 62 | |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 63 | $(E2FSPROGS_DIR)$(E2FSPROGS_AR): $(patsubst %,$(E2FSPROGS_DIR)%, $(E2FSPROGS-y)) |
Mike Frysinger | 4d00896 | 2005-07-27 01:09:24 +0000 | [diff] [blame] | 64 | $(AR) $(ARFLAGS) $@ $(patsubst %,$(E2FSPROGS_DIR)%, $(E2FSPROGS-y)) |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 65 | |
Rob Landley | e1d9633 | 2005-08-24 00:41:52 +0000 | [diff] [blame] | 66 | # for e2p/*: check if the dir exists, dude |
Mike Frysinger | d89e5e6 | 2005-04-24 05:15:12 +0000 | [diff] [blame] | 67 | $(E2FSPROGS_DIR)%.o: $(srcdir)/%.c |
Rob Landley | e1d9633 | 2005-08-24 00:41:52 +0000 | [diff] [blame] | 68 | @[ -d $(@D) ] || mkdir -v $(@D) |
Mike Frysinger | 7ffce0c | 2005-06-11 00:45:50 +0000 | [diff] [blame] | 69 | $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(E2FSPROGS_CFLAGS) -c -o $@ $< |