Makefile revision 5680
3169N/A#
3169N/A# CDDL HEADER START
3169N/A#
3169N/A# The contents of this file are subject to the terms of the
3169N/A# Common Development and Distribution License (the "License").
3169N/A# You may not use this file except in compliance with the License.
3169N/A#
3169N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
3169N/A# or http://www.opensolaris.org/os/licensing.
3169N/A# See the License for the specific language governing permissions
3169N/A# and limitations under the License.
3169N/A#
3169N/A# When distributing Covered Code, include this CDDL HEADER in each
3169N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
3169N/A# If applicable, add the following below this CDDL HEADER, with the
3169N/A# fields enclosed by brackets "[]" replaced with your own identifying
3169N/A# information: Portions Copyright [yyyy] [name of copyright owner]
3169N/A#
3169N/A# CDDL HEADER END
3169N/A#
3169N/A
3169N/A#
3169N/A# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
3169N/A#
3169N/ABUILD_BITS= 64
3169N/A# There are a large number of macros in the GCB code written
3169N/A# specifically for GCC's preprocessor. Studio does not expand
3169N/A# these macros the same way GCC does, and the resulting gdb is
3169N/A# not usable. Building gdb with a GCC >= 4.7.2 produces very
3169N/A# good results, even on SPARC.
3169N/ACOMPILER= gcc
3169N/Ainclude ../../make-rules/shared-macros.mk
3169N/A
3169N/ACOMPONENT_NAME= gdb
3169N/ACOMPONENT_VERSION= 7.6
3169N/ACOMPONENT_ARCHIVE_HASH= \
3169N/A sha256:8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5d2502faa36
3169N/A
3169N/ATPNO= 17258
3169N/A
3169N/ATEST_TARGET= $(NO_TESTS)
3169N/Ainclude $(WS_MAKE_RULES)/gnu-component.mk
3169N/A
3169N/A
3169N/A# GDB wants the GNU utilities
3169N/APATH=/usr/gnu/bin:$(GCC_ROOT)/bin:/usr/bin:/usr/perl5/bin
3169N/A
3169N/ACFLAGS_sparc = -g -O2 -mcpu=ultrasparc -mtune=ultrasparc
3169N/ACFLAGS_sparc += -mno-unaligned-doubles
3169N/ACFLAGS_sparc += -mapp-regs -mhard-float
3169N/ACFLAGS_i386 = -g -O2 -march=opteron -mtune=opteron
3169N/ACFLAGS_EXTRA = -Wall -Wno-long-long -Wcast-align -fno-omit-frame-pointer
3169N/A
3169N/ACFLAGS = $(CC_BITS) $(CFLAGS_EXTRA) $(CFLAGS_$(MACH))
3169N/ACXXFLAGS = $(CC_BITS) $(CFLAGS_EXTRA) $(CFLAGS_$(MACH))
3169N/ACPPFLAGS = -D_REENTRANT -I$(USRINCDIR)/ncurses
3169N/A
3169N/ACONFIGURE_OPTIONS += --with-x=no
3169N/ACONFIGURE_OPTIONS += --with-curses
3169N/ACONFIGURE_OPTIONS += --disable-werror
3169N/ACONFIGURE_OPTIONS += --enable-plugins
3169N/ACONFIGURE_OPTIONS += --enable-tui
3169N/ACONFIGURE_OPTIONS += --without-auto-load-safe-path
3169N/ACONFIGURE_OPTIONS += --with-python=yes
3169N/ACONFIGURE_OPTIONS += --with-libexpat-prefix=$(USRLIBDIR)
3169N/ACONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
# Generate the newly added Solaris instruction and
# register tables which weren't there by default.
COMPONENT_PRE_CONFIGURE_ACTION = \
( cd $(SOURCE_DIR)/gdb/features ; \
$(GMAKE) all )
COMPONENT_POST_INSTALL_ACTION = \
( cd $(PROTOUSRDIR)/share/gdb/python/gdb ; \
$(PYTHON) -m compileall . ; \
cd $(PROTOUSRDIR)/share/gdb/python/gdb/command ; \
$(PYTHON) -m compileall . ; \
cd $(PROTOUSRDIR)/share/gdb/python/gdb/function ; \
$(PYTHON) -m compileall . ; \
cd $(PROTOUSRBINDIR)/ ; \
/usr/bin/strip -x gdb ; \
cd $(COMPONENT_DIR) ; \
$(INSTALL) -m 0755 $(COMPONENT_DIR)/Solaris/gdbtui \
$(PROTOUSRBINDIR)/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-1 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-2 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-3 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-4 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-5 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-6 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdb.info-7 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdbint.info \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdbint.info-1 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/gdbint.info-2 \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/annotate.info \
$(PROTOUSRSHAREDIR)/info/ ; \
$(INSTALL) -m 0644 $(SOURCE_DIR)/gdb/doc/stabs.info \
$(PROTOUSRSHAREDIR)/info/ )
# Disable ASLR: it's a debugger and we do not want to risk
# altering the results of the debugging experiment.
ASLR_MODE=$(ASLR_DISABLE)
REQUIRED_PACKAGES += compress/xz
REQUIRED_PACKAGES += library/expat
REQUIRED_PACKAGES += library/ncurses
REQUIRED_PACKAGES += library/readline
REQUIRED_PACKAGES += library/zlib
REQUIRED_PACKAGES += shell/ksh93
REQUIRED_PACKAGES += system/library/math
REQUIRED_PACKAGES += text/texinfo