Print this page
8411 Build should warn when linking against libraries outside proto area
*** 25,34 ****
--- 25,35 ----
# Copyright 2014 Garrett D'Amore <garrett@damore.org>
# Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved.
# Copyright 2015 Gary Mills
# Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com>
# Copyright 2016 Toomas Soome <tsoome@me.com>
+ # Copyright 2017 RackTop Systems.
#
#
# Makefile.master, global definitions for system source
#
*** 97,106 ****
--- 98,113 ----
__SUNC= $(POUND_SIGN)
$(__SUNC)__GNUC= $(POUND_SIGN)
__GNUC64= $(__GNUC)
+ # If ADJUNCT_PROTO was set we set ADJUNCT_PROTO_NOT_SET to POUND_SIGN so
+ # we can use it to turn off the -zassert-deflib exceptions that allow
+ # linking against host libraries.
+ ADJUNCT_PROTO_NOT_SET= $(ADJUNCT_PROTO:%=$(POUND_SIGN))
+ $(ADJUNCT_PROTO_NOT_SET)ADJUNCT_PROTO_SET= $(POUND_SIGN)
+
# Allow build-time "configuration" to enable or disable some things.
# The default is POUND_SIGN, meaning "not enabled". If the environment
# passes in an override like ENABLE_SMB_PRINTING= (empty) that will
# uncomment things in the lower Makefiles to enable the feature.
ENABLE_SMB_PRINTING= $(POUND_SIGN)
*** 670,684 ****
#
# LDLIBS32 and LDLIBS64 can be set in the environment to override the following
# assignments.
#
- # These environment settings make sure that no libraries are searched outside
- # of the local workspace proto area:
- # LDLIBS32=-YP,$ROOT/lib:$ROOT/usr/lib
- # LDLIBS64=-YP,$ROOT/lib/$MACH64:$ROOT/usr/lib/$MACH64
- #
LDLIBS32 = $(ENVLDLIBS1) $(ENVLDLIBS2) $(ENVLDLIBS3)
LDLIBS32 += $(ADJUNCT_PROTO:%=-L%/usr/lib -L%/lib)
LDLIBS.cmd = $(LDLIBS32)
LDLIBS.lib = $(LDLIBS32)
--- 677,686 ----
*** 686,695 ****
--- 688,703 ----
$(ENVLDLIBS2:%=%/$(MACH64)) \
$(ENVLDLIBS3:%=%/$(MACH64))
LDLIBS64 += $(ADJUNCT_PROTO:%=-L%/usr/lib/$(MACH64) -L%/lib/$(MACH64))
#
+ # Defines to be used when overriding the default search path with -YP.
+ #
+ DEFLDPATH = /lib:/usr/lib
+ DEFLDPATH64 = /lib/64:/usr/lib/64
+
+ #
# Define compilation macros.
#
COMPILE.c= $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE64.c= $(CC) $(CFLAGS64) $(CPPFLAGS) -c
COMPILE.cc= $(CCC) $(CCFLAGS) $(CPPFLAGS) -c
*** 871,880 ****
--- 879,889 ----
ZNOVERSION= -znoversion
ZRECORD= -zrecord
ZREDLOCSYM= -zredlocsym
ZTEXT= -ztext
ZVERBOSE= -zverbose
+ ZASSERTDEFLIB= -zassert-deflib
GSHARED= -G
CCMT= -mt
# Handle different PIC models on different ISAs