It's hidden behind a configuration option `CONFIG_RAMSTAGE_LIBHWBASE`. This also adds some glue code to use the coreboot console for debug output and our monotonic timer framework as timer backend. v2: Also update 3rdparty/libhwbase to the latest master commit. Change-Id: I8e8d50271b46aac1141f95ab55ad323ac0889a8d Signed-off-by: Nico Huber <nico.huber@secunet.com> Reviewed-on: https://review.coreboot.org/16951 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
67 lines
1.8 KiB
Makefile
67 lines
1.8 KiB
Makefile
##
|
|
## This file is part of the coreboot project.
|
|
##
|
|
## Copyright (C) 2016 Nico Huber <nico.h@gmx.de>
|
|
##
|
|
## This program is free software; you can redistribute it and/or modify
|
|
## it under the terms of the GNU General Public License as published by
|
|
## the Free Software Foundation; version 2 of the License.
|
|
##
|
|
## This program is distributed in the hope that it will be useful,
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
## GNU General Public License for more details.
|
|
##
|
|
|
|
define libgnat-template
|
|
# $1 arch
|
|
|
|
additional-dirs += $$(obj)/libgnat-$(1)/adainclude
|
|
additional-dirs += $$(obj)/libgnat-$(1)/adalib
|
|
|
|
ADAFLAGS_libgnat-$(1) := \
|
|
--RTS=$$(obj)/libgnat-$(1)/ \
|
|
-gnatg \
|
|
-gnatpg \
|
|
-I$$(src)/lib/gnat/ \
|
|
|
|
libgnat-$(1)-y += a-unccon.ads
|
|
libgnat-$(1)-y += ada.ads
|
|
libgnat-$(1)-y += g-souinf.ads
|
|
libgnat-$(1)-y += gnat.ads
|
|
libgnat-$(1)-y += i-c.adb
|
|
libgnat-$(1)-y += i-c.ads
|
|
libgnat-$(1)-y += interfac.ads
|
|
libgnat-$(1)-y += s-atacco.ads
|
|
libgnat-$(1)-y += s-imenne.adb
|
|
libgnat-$(1)-y += s-imenne.ads
|
|
libgnat-$(1)-y += s-maccod.ads
|
|
libgnat-$(1)-y += s-parame.ads
|
|
libgnat-$(1)-y += s-stoele.adb
|
|
libgnat-$(1)-y += s-stoele.ads
|
|
libgnat-$(1)-y += s-unstyp.ads
|
|
libgnat-$(1)-y += system.ads
|
|
|
|
# Copy bodies too for inlining
|
|
$$(obj)/libgnat-$(1)/libgnat.a: $$$$(libgnat-$(1)-objs)
|
|
cp $$(libgnat-$(1)-srcs) $$(libgnat-$(1)-extra-specs) \
|
|
$$(obj)/libgnat-$(1)/adainclude/
|
|
cp $$(libgnat-$(1)-alis) \
|
|
$$(obj)/libgnat-$(1)/adalib/
|
|
rm -f $$@
|
|
@printf " AR $$(subst $$(obj)/,,$$(@))\n"
|
|
$$(AR_libgnat-$(1)) cr $$@ $$^
|
|
|
|
endef
|
|
|
|
|
|
$(foreach arch,$(standard-archs), \
|
|
$(eval $(call define_class,libgnat-$(arch),$(arch))))
|
|
|
|
$(foreach arch,$(standard-archs), \
|
|
$(eval $(call libgnat-template,$(arch))))
|
|
|
|
ifeq ($(CONFIG_RAMSTAGE_ADA),y)
|
|
ramstage-libs += $(obj)/libgnat-$(ARCH-ramstage-y)/libgnat.a
|
|
endif
|