xref: /openbmc/u-boot/lib/Makefile (revision 686e1448)
1#
2# (C) Copyright 2000-2006
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
5# See file CREDITS for list of people who contributed to this
6# project.
7#
8# This program is free software; you can redistribute it and/or
9# modify it under the terms of the GNU General Public License as
10# published by the Free Software Foundation; either version 2 of
11# the License, or (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; if not, write to the Free Software
20# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21# MA 02111-1307 USA
22#
23
24include $(TOPDIR)/config.mk
25
26LIB	= $(obj)libgeneric.o
27
28ifndef CONFIG_SPL_BUILD
29COBJS-$(CONFIG_ADDR_MAP) += addr_map.o
30COBJS-$(CONFIG_AES) += aes.o
31COBJS-$(CONFIG_BZIP2) += bzlib.o
32COBJS-$(CONFIG_BZIP2) += bzlib_crctable.o
33COBJS-$(CONFIG_BZIP2) += bzlib_decompress.o
34COBJS-$(CONFIG_BZIP2) += bzlib_randtable.o
35COBJS-$(CONFIG_BZIP2) += bzlib_huffman.o
36COBJS-$(CONFIG_USB_TTY) += circbuf.o
37COBJS-y += crc7.o
38COBJS-y += crc16.o
39COBJS-y += display_options.o
40COBJS-y += errno.o
41COBJS-$(CONFIG_OF_CONTROL) += fdtdec.o
42COBJS-$(CONFIG_TEST_FDTDEC) += fdtdec_test.o
43COBJS-$(CONFIG_GZIP) += gunzip.o
44COBJS-$(CONFIG_GZIP_COMPRESSED) += gzip.o
45COBJS-y += hashtable.o
46COBJS-y += initcall.o
47COBJS-$(CONFIG_LMB) += lmb.o
48COBJS-y += ldiv.o
49COBJS-$(CONFIG_MD5) += md5.o
50COBJS-y += net_utils.o
51COBJS-$(CONFIG_PHYSMEM) += physmem.o
52COBJS-y += qsort.o
53COBJS-$(CONFIG_SHA1) += sha1.o
54COBJS-$(CONFIG_SHA256) += sha256.o
55COBJS-y	+= strmhz.o
56COBJS-$(CONFIG_RBTREE)	+= rbtree.o
57endif
58
59ifdef CONFIG_SPL_BUILD
60COBJS-$(CONFIG_SPL_YMODEM_SUPPORT) += crc16.o
61COBJS-$(CONFIG_SPL_NET_SUPPORT) += crc32.o
62ifneq ($(CONFIG_SPL_SPI_FLASH_SUPPORT)$(CONFIG_SPL_NET_SUPPORT),)
63COBJS-y += display_options.o
64endif
65COBJS-$(CONFIG_SPL_NET_SUPPORT) += errno.o
66COBJS-$(CONFIG_SPL_NET_SUPPORT) += hashtable.o
67COBJS-$(CONFIG_SPL_NET_SUPPORT) += net_utils.o
68endif
69COBJS-$(CONFIG_BCH) += bch.o
70COBJS-y += crc32.o
71COBJS-y += ctype.o
72COBJS-y += div64.o
73COBJS-y += linux_string.o
74COBJS-y += string.o
75COBJS-y += time.o
76COBJS-$(CONFIG_BOOTP_PXE) += uuid.o
77COBJS-y += vsprintf.o
78COBJS-$(CONFIG_RANDOM_MACADDR) += rand.o
79COBJS-$(CONFIG_BOOTP_RANDOM_DELAY) += rand.o
80COBJS-$(CONFIG_CMD_LINK_LOCAL) += rand.o
81
82COBJS	:= $(sort $(COBJS-y))
83SRCS	:= $(COBJS:.o=.c)
84OBJS	:= $(addprefix $(obj),$(COBJS))
85
86$(LIB):	$(obj).depend $(OBJS)
87	$(call cmd_link_o_target, $(OBJS))
88
89# SEE README.arm-unaligned-accesses
90$(obj)bzlib.o: CFLAGS += $(PLATFORM_NO_UNALIGNED)
91
92#########################################################################
93
94# defines $(obj).depend target
95include $(SRCTREE)/rules.mk
96
97sinclude $(obj).depend
98
99#########################################################################
100