xref: /openbmc/u-boot/lib/Makefile (revision ecd4551f)
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_BCH) += bch.o
31COBJS-$(CONFIG_AES) += aes.o
32COBJS-$(CONFIG_BZIP2) += bzlib.o
33COBJS-$(CONFIG_BZIP2) += bzlib_crctable.o
34COBJS-$(CONFIG_BZIP2) += bzlib_decompress.o
35COBJS-$(CONFIG_BZIP2) += bzlib_randtable.o
36COBJS-$(CONFIG_BZIP2) += bzlib_huffman.o
37COBJS-$(CONFIG_USB_TTY) += circbuf.o
38COBJS-y += crc7.o
39COBJS-y += crc16.o
40COBJS-y += display_options.o
41COBJS-y += errno.o
42COBJS-$(CONFIG_OF_CONTROL) += fdtdec.o
43COBJS-$(CONFIG_TEST_FDTDEC) += fdtdec_test.o
44COBJS-$(CONFIG_GZIP) += gunzip.o
45COBJS-$(CONFIG_GZIP_COMPRESSED) += gzip.o
46COBJS-y += hashtable.o
47COBJS-$(CONFIG_LMB) += lmb.o
48COBJS-y += ldiv.o
49COBJS-$(CONFIG_MD5) += md5.o
50COBJS-y += net_utils.o
51COBJS-y += qsort.o
52COBJS-$(CONFIG_SHA1) += sha1.o
53COBJS-$(CONFIG_SHA256) += sha256.o
54COBJS-y	+= strmhz.o
55COBJS-$(CONFIG_RBTREE)	+= rbtree.o
56endif
57
58ifdef CONFIG_SPL_BUILD
59COBJS-$(CONFIG_SPL_YMODEM_SUPPORT) += crc16.o
60COBJS-$(CONFIG_SPL_NET_SUPPORT) += crc32.o
61ifneq ($(CONFIG_SPL_SPI_FLASH_SUPPORT)$(CONFIG_SPL_NET_SUPPORT),)
62COBJS-y += display_options.o
63endif
64COBJS-$(CONFIG_SPL_NET_SUPPORT) += errno.o
65COBJS-$(CONFIG_SPL_NET_SUPPORT) += hashtable.o
66COBJS-$(CONFIG_SPL_NET_SUPPORT) += net_utils.o
67endif
68COBJS-y += crc32.o
69COBJS-y += ctype.o
70COBJS-y += div64.o
71COBJS-y += string.o
72COBJS-y += time.o
73COBJS-$(CONFIG_BOOTP_PXE) += uuid.o
74COBJS-y += vsprintf.o
75COBJS-$(CONFIG_RANDOM_MACADDR) += rand.o
76COBJS-$(CONFIG_BOOTP_RANDOM_DELAY) += rand.o
77COBJS-$(CONFIG_CMD_LINK_LOCAL) += rand.o
78
79COBJS	:= $(sort $(COBJS-y))
80SRCS	:= $(COBJS:.o=.c)
81OBJS	:= $(addprefix $(obj),$(COBJS))
82
83$(LIB):	$(obj).depend $(OBJS)
84	$(call cmd_link_o_target, $(OBJS))
85
86# SEE README.arm-unaligned-accesses
87$(obj)bzlib.o: CFLAGS += $(PLATFORM_NO_UNALIGNED)
88
89#########################################################################
90
91# defines $(obj).depend target
92include $(SRCTREE)/rules.mk
93
94sinclude $(obj).depend
95
96#########################################################################
97