| include MCONFIG |
| |
| COMMON_OBJS = main.o netdev.o packet.o |
| DHCP_OBJS = dhcp_proto.o |
| BOOTP_OBJS = bootp_proto.o |
| PROGS = ipconfig |
| STATICPROGS := $(patsubst %,static/%,$(PROGS)) |
| SHAREDPROGS := $(patsubst %,shared/%,$(PROGS)) |
| LIB = libipconfig.a |
| LIBS = $(KLIBC) $(LIBGCC) |
| |
| OBJS := $(COMMON_OBJS) $(BOOTP_OBJS) $(DHCP_OBJS) |
| |
| all: $(STATICPROGS) $(SHAREDPROGS) $(LIB) |
| |
| static/ipconfig: $(OBJS) $(CRT0) $(LIBS) |
| mkdir -p static static.g |
| $(LD) $(LDFLAGS) -o $@ $(CRT0) $(OBJS) $(LIBS) |
| cp -f $@ static.g |
| $(STRIP) $@ |
| |
| shared/ipconfig: $(OBJS) $(CRT0) $(LIBSHARED) $(LIBGCC) |
| mkdir -p shared shared.g |
| $(LD) $(LDFLAGS) -o $@ $(EMAIN) $(CRTSHARED) $(OBJS) \ |
| -R $(LIBSHARED) $(LIBGCC) |
| cp -f $@ shared.g |
| $(STRIP) $@ |
| |
| $(LIB): $(OBJS) |
| $(AR) cru $(LIB) $(OBJS) |
| |
| clean: |
| $(RM) *.o $(PROG) $(LIB) core |
| $(RM) -r static static.g shared shared.g |
| |
| spotless: clean |
| $(RM) *~ .*.d |
| |
| ifneq ($(wildcard .*.d),) |
| include $(wildcard .*.d) |
| endif |