xref: /openbmc/u-boot/lib/Makefile (revision 9458f6d8)
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_TPM) += tpm.o
57COBJS-$(CONFIG_RBTREE)	+= rbtree.o
58endif
59
60ifdef CONFIG_SPL_BUILD
61COBJS-$(CONFIG_SPL_YMODEM_SUPPORT) += crc16.o
62COBJS-$(CONFIG_SPL_NET_SUPPORT) += crc32.o
63ifneq ($(CONFIG_SPL_SPI_FLASH_SUPPORT)$(CONFIG_SPL_NET_SUPPORT),)
64COBJS-y += display_options.o
65endif
66COBJS-$(CONFIG_SPL_NET_SUPPORT) += errno.o
67COBJS-$(CONFIG_SPL_NET_SUPPORT) += hashtable.o
68COBJS-$(CONFIG_SPL_NET_SUPPORT) += net_utils.o
69endif
70COBJS-$(CONFIG_BCH) += bch.o
71COBJS-y += crc32.o
72COBJS-y += ctype.o
73COBJS-y += div64.o
74COBJS-y += hang.o
75COBJS-y += linux_string.o
76COBJS-$(CONFIG_REGEX) += slre.o
77COBJS-y += string.o
78COBJS-y += time.o
79COBJS-$(CONFIG_BOOTP_PXE) += uuid.o
80COBJS-y += vsprintf.o
81COBJS-$(CONFIG_RANDOM_MACADDR) += rand.o
82COBJS-$(CONFIG_BOOTP_RANDOM_DELAY) += rand.o
83COBJS-$(CONFIG_CMD_LINK_LOCAL) += rand.o
84
85COBJS	:= $(sort $(COBJS-y))
86SRCS	:= $(COBJS:.o=.c)
87OBJS	:= $(addprefix $(obj),$(COBJS))
88
89$(LIB):	$(obj).depend $(OBJS)
90	$(call cmd_link_o_target, $(OBJS))
91
92# SEE README.arm-unaligned-accesses
93$(obj)bzlib.o: CFLAGS += $(PLATFORM_NO_UNALIGNED)
94
95#########################################################################
96
97# defines $(obj).depend target
98include $(SRCTREE)/rules.mk
99
100sinclude $(obj).depend
101
102#########################################################################
103