1450N/A#
1450N/A# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
1450N/A#
1450N/A# Permission is hereby granted, free of charge, to any person obtaining a
1450N/A# copy of this software and associated documentation files (the "Software"),
1450N/A# to deal in the Software without restriction, including without limitation
1450N/A# the rights to use, copy, modify, merge, publish, distribute, sublicense,
1450N/A# and/or sell copies of the Software, and to permit persons to whom the
1450N/A# Software is furnished to do so, subject to the following conditions:
1450N/A#
1450N/A# The above copyright notice and this permission notice (including the next
1450N/A# paragraph) shall be included in all copies or substantial portions of the
1450N/A# Software.
1450N/A#
1450N/A# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1450N/A# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1450N/A# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
1450N/A# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1450N/A# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1450N/A# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
1450N/A# DEALINGS IN THE SOFTWARE.
1450N/A#
1450N/A#
1450N/A###############################################################################
1450N/A#
1450N/A# This Makefile actually builds the i915 framebuffer driver
1450N/A#
1450N/A###############################################################################
1450N/A
1450N/ATOP:sh = hg root
1450N/A
1450N/AC_SRCS = dvo_ch7017.c \
1450N/A dvo_ch7xxx.c \
1450N/A dvo_ivch.c \
1450N/A dvo_ns2501.c \
1450N/A dvo_sil164.c \
1450N/A dvo_tfp410.c \
1450N/A i915_dma.c \
1450N/A i915_drv.c \
1450N/A i915_gem.c \
1450N/A i915_gem_context.c \
1450N/A i915_gem_debug.c \
1450N/A i915_gem_evict.c \
1450N/A i915_gem_execbuffer.c \
1450N/A i915_gem_gtt.c \
1450N/A i915_gem_stolen.c \
1450N/A i915_gem_tiling.c \
1450N/A i915_io32.c \
1450N/A i915_irq.c \
1450N/A i915_suspend.c \
1450N/A i915_ums.c \
1450N/A intel_bios.c \
1450N/A intel_crt.c \
1450N/A intel_ddi.c \
1450N/A intel_display.c \
1450N/A intel_dp.c \
1450N/A intel_dvo.c \
1450N/A intel_fb.c \
1450N/A intel_hdmi.c \
1450N/A intel_i2c.c \
1450N/A intel_lvds.c \
1450N/A intel_modes.c \
1450N/A intel_overlay.c \
1450N/A intel_panel.c \
1450N/A intel_pm.c \
1450N/A intel_ringbuffer.c \
1450N/A intel_sdvo.c \
1450N/A intel_sideband.c \
1450N/A intel_sprite.c \
1450N/A intel_tv.c
1450N/A
1450N/AMANPAGES = i915.7d
1450N/AMANSECTION = man7d
1450N/AMANSOURCE = ../manpages
1450N/A
1450N/A# Include kernel common rules
1450N/Ainclude $(TOP)/open-src/kernel/Makefile.rules
1450N/A
1450N/AMODULE = i915
1450N/AOBJECTS = $(C_SRCS:%.c=%.o)
1450N/ALINTS = $(OBJECTS:%.o=%.ln)
1450N/A
1450N/A#
1450N/A# Define targets
1450N/A#
1450N/AALL_TARGET = $(BINARY)
1450N/ALINT_TARGET = $(MODULE).lint
1450N/AINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
1450N/A
1450N/A#
1450N/A# Lint errors that are not clean
1450N/A#
1450N/ALINTTAGS += -erroff=E_STATIC_UNUSED
1450N/A
1450N/A#
1450N/A# Lint clean in current code, but might not be in updated code
1450N/A#
1450N/A# LINTTAGS += -erroff=E_FUNC_ARG_UNUSED
1450N/A# LINTTAGS += -erroff=E_CONST_EXPR
1450N/A# LINTTAGS += -erroff=E_TRUE_LOGICAL_EXPR
1450N/A# LINTTAGS += -erroff=E_FALSE_LOGICAL_EXPR
1450N/A#
1450N/A# And the %p issue in 15196627 that is currently resolved in this source
1450N/A# LINTTAGS += -erroff=E_BAD_FORMAT_ARG_TYPE2
1450N/A
1450N/A#
1450N/A# Default build targets.
1450N/A#
1450N/A.KEEP_STATE_FILE: .make.state.$(MACH)
1450N/A# .SUFFIXES:
1450N/A# .DEFAULT: $(MODULE)
1450N/A
1450N/Aall: $(MODULE)
1450N/A
1450N/A$(OBJECTS):
1450N/A $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
1450N/A $(CTFCONVERT) $(CTFCVTFLAGS) $@
1450N/A
1450N/A$(MODULE): $(OBJECTS)
1450N/A $(LD) -o $@ $(LDFLAGS) $(OBJECTS)
1450N/A $(CTFMERGE) $(CTFMERGE_LABEL) -o $@ $(OBJECTS)
1450N/A
1450N/Adef: $(DEF_DEPS)
1450N/A
1450N/Aclean: $(CLEAN_DEPS)
1450N/A $(RM) $(OBJECTS)
1450N/A
1450N/Aclobber: clean
1450N/A $(RM) *.bc
1450N/A $(RM) $(MODULE)
1450N/A
1450N/Alint: $(LINT_DEPS)
1450N/A
1450N/Amodlintlib: $(MODLINTLIB_DEPS)
1450N/A
1450N/Aclean.lint: $(CLEAN_LINT_DEPS)
1450N/A
1450N/Ainstall: $(INSTALL_DEPS)
1450N/A @print Installing $(MODULE) in $(PROTODIR)/$(PREFIX)
1450N/A @mkdir -p $(PROTODIR)/$(PREFIX)
1450N/A @$(INSTALL) -m 555 $(MODULE) $(PROTODIR)/$(PREFIX)
1450N/A @print Installing $(MANSOURCE)/$(MANPAGES) in $(PROTODIR)$(MANTARGET)
1450N/A @mkdir -p $(PROTODIR)$(ROOT_MAN_DIR)/$(MANSECTION)
1450N/A @$(INSTALL) -m 644 $(MANSOURCE)/$(MANPAGES) $(PROTODIR)$(MANTARGET)