2 SLOF_DIR
:= $(SRC_PATH
)/roms
/SLOF
4 NETOBJS
:= start.o sclp.o cio.o virtio.o virtio-net.o jump2ipl.o netmain.o
6 LIBC_INC
:= -nostdinc
-I
$(SLOF_DIR
)/lib
/libc
/include
7 LIBNET_INC
:= -I
$(SLOF_DIR
)/lib
/libnet
9 NETLDFLAGS
:= $(LDFLAGS
) -Ttext
=0x7800000
11 $(NETOBJS
): QEMU_CFLAGS
+= $(LIBC_INC
) $(LIBNET_INC
)
13 s390-netboot.elf
: $(NETOBJS
) libnet.a libc.a
14 $(call quiet-command
,$(CC
) $(NETLDFLAGS
) -o
$@
$^
,"BUILD","$(TARGET_DIR)$@")
16 s390-netboot.img
: s390-netboot.elf
17 $(call quiet-command
,$(STRIP
) --strip-unneeded
$< -o
$@
,"STRIP","$(TARGET_DIR)$@")
21 LIBC_CFLAGS
= $(QEMU_CFLAGS
) $(CFLAGS
) $(LIBC_INC
) $(LIBNET_INC
) \
22 -MMD
-MP
-MT
$@
-MF
$(@
:%.o
=%.d
)
24 CTYPE_OBJS
= isdigit.o isxdigit.o toupper.o
25 %.o
: $(SLOF_DIR
)/lib
/libc
/ctype
/%.c
26 $(call quiet-command
,$(CC
) $(LIBC_CFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
28 STRING_OBJS
= strcat.o strchr.o strrchr.o strcpy.o strlen.o strncpy.o \
29 strcmp.o strncmp.o strcasecmp.o strncasecmp.o strstr.o \
30 memset.o memcpy.o memmove.o memcmp.o
31 %.o
: $(SLOF_DIR
)/lib
/libc
/string
/%.c
32 $(call quiet-command
,$(CC
) $(LIBC_CFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
34 STDLIB_OBJS
= atoi.o atol.o strtoul.o strtol.o rand.o malloc.o free.o
35 %.o
: $(SLOF_DIR
)/lib
/libc
/stdlib
/%.c
36 $(call quiet-command
,$(CC
) $(LIBC_CFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
38 STDIO_OBJS
= sprintf.o snprintf.o vfprintf.o vsnprintf.o vsprintf.o fprintf.o \
39 printf.o putc.o puts.o putchar.o stdchnls.o fileno.o
40 %.o
: $(SLOF_DIR
)/lib
/libc
/stdio
/%.c
41 $(call quiet-command
,$(CC
) $(LIBC_CFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
43 sbrk.o
: $(SLOF_DIR
)/slof
/sbrk.c
44 $(call quiet-command
,$(CC
) $(LIBC_CFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
46 LIBCOBJS
:= $(STRING_OBJS
) $(CTYPE_OBJS
) $(STDLIB_OBJS
) $(STDIO_OBJS
) sbrk.o
49 $(call quiet-command
,$(AR
) -rc
$@
$^
,"AR","$(TARGET_DIR)$@")
53 LIBNETOBJS
:= args.o dhcp.o dns.o icmpv6.o ipv6.o tcp.o udp.o bootp.o \
54 dhcpv6.o ethernet.o ipv4.o ndp.o tftp.o pxelinux.o
55 LIBNETCFLAGS
= $(QEMU_CFLAGS
) $(CFLAGS
) $(LIBC_INC
) $(LIBNET_INC
) \
56 -DDHCPARCH
=0x1F -MMD
-MP
-MT
$@
-MF
$(@
:%.o
=%.d
)
58 %.o
: $(SLOF_DIR
)/lib
/libnet
/%.c
59 $(call quiet-command
,$(CC
) $(LIBNETCFLAGS
) -c
-o
$@
$<,"CC","$(TARGET_DIR)$@")
61 libnet.a
: $(LIBNETOBJS
)
62 $(call quiet-command
,$(AR
) -rc
$@
$^
,"AR","$(TARGET_DIR)$@")