drm: further modifications to make it build and publish
2 files added
10 files modified
New file |
| | |
| | | # |
| | | # This file and its contents are supplied under the terms of the |
| | | # Common Development and Distribution License ("CDDL"), version 1.0. |
| | | # You may only use this file in accordance with the terms of version |
| | | # 1.0 of the CDDL. |
| | | # |
| | | # A full copy of the text of the CDDL should have accompanied this |
| | | # source. A copy of the CDDL is also available via the Internet at |
| | | # http://www.illumos.org/license/CDDL. |
| | | # |
| | | |
| | | # |
| | | # Copyright 2016 Alexander Pyhalov |
| | | # |
| | | |
| | | set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) |
| | | set name=pkg.summary value="$(COMPONENT_SUMMARY)" |
| | | set name=info.classification value="$(COMPONENT_CLASSIFICATION)" |
| | | set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) |
| | | set name=org.opensolaris.consolidation value=$(CONSOLIDATION) |
| | | |
| | | license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)' |
| | | |
| | | file path=kernel/drv/$(MACH64)/i915 group=sys pkg.depend.bypass-generate=.* |
| | | file path=kernel/kmdb/$(MACH64)/i915 group=sys pkg.depend.bypass-generate=.* |
| | | file path=kernel/misc/$(MACH64)/drm group=sys pkg.depend.bypass-generate=.* |
| | | file path=usr/lib/mdb/kvm/$(MACH64)/i915.so group=sys |
| | | file path=usr/share/man/man4d/i915.4d |
| | | |
| | | driver name=i915 perms="* 0644 root sys" \ |
| | | alias=pci8086,42 \ |
| | | alias=pci8086,46 \ |
| | | alias=pci8086,102 \ |
| | | alias=pci8086,106 \ |
| | | alias=pci8086,10a \ |
| | | alias=pci8086,112 \ |
| | | alias=pci8086,116 \ |
| | | alias=pci8086,122 \ |
| | | alias=pci8086,126 \ |
| | | alias=pci8086,152 \ |
| | | alias=pci8086,156 \ |
| | | alias=pci8086,15a \ |
| | | alias=pci8086,162 \ |
| | | alias=pci8086,166 \ |
| | | alias=pci8086,16a \ |
| | | alias=pci8086,402 \ |
| | | alias=pci8086,406 \ |
| | | alias=pci8086,40a \ |
| | | alias=pci8086,40b \ |
| | | alias=pci8086,40e \ |
| | | alias=pci8086,412 \ |
| | | alias=pci8086,416 \ |
| | | alias=pci8086,41a \ |
| | | alias=pci8086,41b \ |
| | | alias=pci8086,41e \ |
| | | alias=pci8086,422 \ |
| | | alias=pci8086,426 \ |
| | | alias=pci8086,42a \ |
| | | alias=pci8086,42b \ |
| | | alias=pci8086,42e \ |
| | | alias=pci8086,a02 \ |
| | | alias=pci8086,a06 \ |
| | | alias=pci8086,a0a \ |
| | | alias=pci8086,a0b \ |
| | | alias=pci8086,a0e \ |
| | | alias=pci8086,a12 \ |
| | | alias=pci8086,a16 \ |
| | | alias=pci8086,a1a \ |
| | | alias=pci8086,a1b \ |
| | | alias=pci8086,a1e \ |
| | | alias=pci8086,a22 \ |
| | | alias=pci8086,a26 \ |
| | | alias=pci8086,a2a \ |
| | | alias=pci8086,a2b \ |
| | | alias=pci8086,a2e \ |
| | | alias=pci8086,c02 \ |
| | | alias=pci8086,c06 \ |
| | | alias=pci8086,c0a \ |
| | | alias=pci8086,c0b \ |
| | | alias=pci8086,c0e \ |
| | | alias=pci8086,c12 \ |
| | | alias=pci8086,c16 \ |
| | | alias=pci8086,c1a \ |
| | | alias=pci8086,c1b \ |
| | | alias=pci8086,c1e \ |
| | | alias=pci8086,c22 \ |
| | | alias=pci8086,c26 \ |
| | | alias=pci8086,c2a \ |
| | | alias=pci8086,c2b \ |
| | | alias=pci8086,c2e \ |
| | | alias=pci8086,d02 \ |
| | | alias=pci8086,d06 \ |
| | | alias=pci8086,d0a \ |
| | | alias=pci8086,d0b \ |
| | | alias=pci8086,d0e \ |
| | | alias=pci8086,d12 \ |
| | | alias=pci8086,d16 \ |
| | | alias=pci8086,d1a \ |
| | | alias=pci8086,d1b \ |
| | | alias=pci8086,d1e \ |
| | | alias=pci8086,d22 \ |
| | | alias=pci8086,d26 \ |
| | | alias=pci8086,d2a \ |
| | | alias=pci8086,d2b \ |
| | | alias=pci8086,d2e \ |
| | | alias=pci8086,2562 \ |
| | | alias=pci8086,2572 \ |
| | | alias=pci8086,2582 \ |
| | | alias=pci8086,2592 \ |
| | | alias=pci8086,2772 \ |
| | | alias=pci8086,27a2 \ |
| | | alias=pci8086,27ae \ |
| | | alias=pci8086,2972 \ |
| | | alias=pci8086,2982 \ |
| | | alias=pci8086,2992 \ |
| | | alias=pci8086,29a2 \ |
| | | alias=pci8086,29b2 \ |
| | | alias=pci8086,29c2 \ |
| | | alias=pci8086,29d2 \ |
| | | alias=pci8086,2a02 \ |
| | | alias=pci8086,2a12 \ |
| | | alias=pci8086,2a42 \ |
| | | alias=pci8086,2e02.8086.2e02 \ |
| | | alias=pci8086,2e12 \ |
| | | alias=pci8086,2e22 \ |
| | | alias=pci8086,2e32 \ |
| | | alias=pci8086,2e42 \ |
| | | alias=pci8086,3582 \ |
| | | alias=pci8086,a001 \ |
| | | alias=pci8086,a011 |
| | |
| | | TOP=$(shell pwd) |
| | | |
| | | # Variables to always pass down to subdirs |
| | | PASSDOWN_VARS = V="$(V)" TOP="$(TOP)" CDEBUGFLAGS="$(CDEBUGFLAGS)" |
| | | PASSDOWN_VARS = V="$(V)" TOP="$(TOP)" CDEBUGFLAGS="$(CDEBUGFLAGS)" CFLAGS="$(CFLAGS)" |
| | | |
| | | .DEFAULT: World |
| | | |
| | | SUBDIRS= drm i915 mdb |
| | | |
| | | World: clean all install lint |
| | | World: clean all install |
| | | |
| | | subdirs: $(SUBDIRS) |
| | | |
| | | $(SUBDIRS): |
| | | $(MAKE) $(PASSDOWN_VARS) -C $@ $(TARGET) |
| | | |
| | | # Dependencies between modules |
| | | i915: drm |
| | |
| | | |
| | | clean all install lint: |
| | | for dir in $(SUBDIRS); do \ |
| | | $(MAKE) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | $(ENV) $(MODTYPE_BUILD_ENV) $(MAKE) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | done |
| | |
| | | CONFIG_ENV += CFLAGS="$(MODTYPE_CFLAGS) $(MODULE_CFLAGS)" |
| | | CONFIG_ENV += CXXFLAGS="$(MODTYPE_CXXFLAGS) $(MODULE_CXXFLAGS)" |
| | | CONFIG_ENV += CPPFLAGS="$(DEFAULT_CONFIG_CPPFLAGS) $(MODTYPE_CPPFLAGS) $(MODULE_CPPFLAGS)" |
| | | CONFIG_ENV += LDFLAGS="$(MODULE_LDFLAGS) $(MODTYPE_LDFLAGS)" |
| | | CONFIG_ENV += LDFLAGS="$(MODULE_LDFLAGS) $(MODTYPE_LDFLAGS) $(EXTRA_LDFLAGS)" |
| | | CONFIG_ENV += PKG_CONFIG_PATH="$(DEFAULT_PKG_CONFIG_PATH)" |
| | | CONFIG_ENV += INSTALL="$(INSTALL_SCRIPT)" CPPROG="cp -p" |
| | | CONFIG_ENV += INSTALL="$(INSTALL)" CPPROG="cp -p" |
| | | CONFIG_ENV += MAKE="$(MODULE_MAKE)" CONFIG_SHELL="$(CONFIG_SHELL)" |
| | | CONFIG_ENV += NM="/usr/gnu/bin/nm" |
| | | CONFIG_ENV += POUND_SIGN="$(POUND_SIGN)" |
| | |
| | | # |
| | | MODTYPE_BUILD_ENV = CFLAGS='$(MODTYPE_CFLAGS)' |
| | | MODTYPE_BUILD_ENV += CC='$(CC)' LD='$(LD)' LINT='$(LINT)' |
| | | |
| | | ENV = /usr/bin/env |
| | | INSTALL = /usr/gnu/bin/install |
| | |
| | | |
| | | # defines unique to kernel modules |
| | | # Note that the following paths are what should be expected. |
| | | # CTFCONVERT = /opt/onbld/bin/$(MACH)/ctfconvert |
| | | # CTFMERGE = /opt/onbld/bin/$(MACH)/ctfmerge |
| | | CTFCONVERT = ctfconvert |
| | | CTFMERGE = ctfmerge |
| | | CTFCONVERT = /opt/onbld/bin/$(MACH)/ctfconvert |
| | | CTFMERGE = /opt/onbld/bin/$(MACH)/ctfmerge |
| | | #CTFCONVERT = ctfconvert |
| | | #CTFMERGE = ctfmerge |
| | | CTFCVTFLAGS = -i -L VERSION |
| | | # XXXX Need a better label. |
| | | CTFMERGE_LABEL = -l 'SunOS Development' |
| | |
| | | # XXXX Need to find a way to remove the hard-code for MACH64_i386. |
| | | # |
| | | |
| | | ROOT_DRV_DIR = /kernel/drv/$(MACH64_i386) |
| | | ROOT_MISC_DIR = /kernel/misc/$(MACH64_i386) |
| | | ROOT_MDB_DIR = /usr/lib/mdb/kvm/$(MACH64_i386) |
| | | ROOT_KMOD_DIR = /kernel/kmdb/$(MACH64_i386) |
| | | ROOT_DRV_DIR = /kernel/drv/$(MACH64) |
| | | ROOT_MISC_DIR = /kernel/misc/$(MACH64) |
| | | ROOT_MDB_DIR = /usr/lib/mdb/kvm/$(MACH64) |
| | | ROOT_KMOD_DIR = /kernel/kmdb/$(MACH64) |
| | | ROOT_MAN_DIR = /usr/share/man |
| | | |
| | | MANTARGET = $(ROOT_MAN_DIR)/$(MANSECTION) |
| | |
| | | # |
| | | # Module core info |
| | | # |
| | | MODULE = kms |
| | | MODULE = drm |
| | | |
| | | # MODULE_NAME - the package this module is installed in |
| | | MODULE_NAME = $(MODULE) |
| | | |
| | | # This is the package this module should be installed into |
| | | MODULE_PKGTAIL = kms |
| | | MODULE_PKGTAIL = drm |
| | | MODULE_PKGTAIL_SET = yes |
| | | |
| | | # Where are the local sources relative to the build dir |
| | | REL_SOURCE_DIR = ../src |
| | | |
| | | # Where do we install the driver. |
| | | MODULE_PREFIX = kernel/misc/$(MACH64_i386) |
| | | MODULE_PREFIX = kernel/misc/$(MACH64) |
| | | MODULE_PREFIX_SET = yes |
| | | |
| | | # No upstream sources for these files, since they're Solaris-specific |
| | |
| | | # Include kernel rules. |
| | | # |
| | | include $(TOP)/Makefile.inc |
| | | |
| | | include $(TOP)/Makefile.rules |
| | | |
| | | SUBDIRS = src |
| | | |
| | | clean all install lint: |
| | | for dir in $(SUBDIRS); do \ |
| | | $(MAKE) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | $(MAKE) $(MODULE_BUILD_ENV) $(MODULE_MAKEFLAGS) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | done |
| | |
| | | ############################################################################### |
| | | |
| | | #TOP:sh = hg root |
| | | # |
| | | # Include kernel rules. |
| | | # |
| | | include $(TOP)/Makefile.inc |
| | | |
| | | include $(TOP)/Makefile.rules |
| | | |
| | | C_SRCS = ati_pcigart.c \ |
| | | drm_agpsupport.c \ |
| | |
| | | |
| | | # Include kernel common rules |
| | | |
| | | MODULE = kms |
| | | MODULE = drm |
| | | OBJECTS = $(C_SRCS:%.c=%.o) |
| | | LINTS = $(OBJECTS:%.o=%.ln) |
| | | |
| | |
| | | |
| | | all: $(MODULE) |
| | | |
| | | $(OBJECTS): |
| | | %.o: %.c |
| | | $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ |
| | | $(CTFCONVERT) $(CTFCVTFLAGS) $@ |
| | | |
| | |
| | | clean.lint: $(CLEAN_LINT_DEPS) |
| | | |
| | | install: $(INSTALL_DEPS) |
| | | @print Installing $(MODULE) in $(PROTODIR)/$(PREFIX) |
| | | @mkdir -p $(PROTODIR)/$(PREFIX) |
| | | @$(INSTALL) -m 555 $(MODULE) $(PROTODIR)/$(PREFIX) |
| | | @print Installing $(MODULE) in $(DESTDIR)/$(PREFIX) |
| | | @mkdir -p $(DESTDIR)/$(PREFIX) |
| | | @$(INSTALL) -m 555 $(MODULE) $(DESTDIR)/$(PREFIX) |
| | |
| | | MODULE_NAME = $(MODULE) |
| | | |
| | | # This is the package this module should be installed into |
| | | MODULE_PKGTAIL = kms |
| | | MODULE_PKGTAIL = drm |
| | | MODULE_PKGTAIL_SET = yes |
| | | |
| | | # Where are the local sources relative to the build dir |
| | | REL_SOURCE_DIR = ../src |
| | | |
| | | # Where do we install the driver. |
| | | MODULE_PREFIX = kernel/drv/$(MACH64_i386) |
| | | MODULE_PREFIX = kernel/drv/$(MACH64) |
| | | MODULE_PREFIX_SET = yes |
| | | |
| | | # No upstream sources for these files, since they're Solaris-specific |
| | |
| | | |
| | | MODULE_MAKEFLAGS = VPATH=$(REL_SOURCE_DIR) -f $(REL_SOURCE_DIR)/Makefile |
| | | MODULE_BUILD_ENV = $(CONFIG_ENV) PREFIX=$(MODULE_PREFIX) |
| | | MODULE_LDFLAGS = -dy -r -Nmisc/kms |
| | | MODULE_LDFLAGS = -dy -r -Nmisc/drm |
| | | |
| | | # |
| | | # License info |
| | |
| | | |
| | | clean all install lint: |
| | | for dir in $(SUBDIRS); do \ |
| | | $(MAKE) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | $(MAKE) $(MODULE_BUILD_ENV) $(MODULE_MAKEFLAGS) -C $$dir $(PASSDOWN_VARS) $(@); \ |
| | | done |
| | |
| | | |
| | | all: $(MODULE) |
| | | |
| | | $(OBJECTS): |
| | | %.o: %.c |
| | | $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ |
| | | $(CTFCONVERT) $(CTFCVTFLAGS) $@ |
| | | |
| | |
| | | clean.lint: $(CLEAN_LINT_DEPS) |
| | | |
| | | install: $(INSTALL_DEPS) |
| | | @print Installing $(MODULE) in $(PROTODIR)/$(PREFIX) |
| | | @mkdir -p $(PROTODIR)/$(PREFIX) |
| | | @$(INSTALL) -m 555 $(MODULE) $(PROTODIR)/$(PREFIX) |
| | | @print Installing $(MANSOURCE)/$(MANPAGES) in $(PROTODIR)$(MANTARGET) |
| | | @mkdir -p $(PROTODIR)$(ROOT_MAN_DIR)/$(MANSECTION) |
| | | @$(INSTALL) -m 644 $(MANSOURCE)/$(MANPAGES) $(PROTODIR)$(MANTARGET) |
| | | @print Installing $(MODULE) in $(DESTDIR)/$(PREFIX) |
| | | @mkdir -p $(DESTDIR)/$(PREFIX) |
| | | @$(INSTALL) -m 555 $(MODULE) $(DESTDIR)/$(PREFIX) |
| | | @print Installing $(MANSOURCE)/$(MANPAGES) in $(DESTDIR)$(MANTARGET) |
| | | @mkdir -p $(DESTDIR)$(ROOT_MAN_DIR)/$(MANSECTION) |
| | | @$(INSTALL) -m 644 $(MANSOURCE)/$(MANPAGES) $(DESTDIR)$(MANTARGET) |
| | |
| | | # |
| | | ############################################################################### |
| | | |
| | | # |
| | | # Include kernel rules. |
| | | # |
| | | include $(TOP)/Makefile.inc |
| | | include $(TOP)/Makefile.rules |
| | | |
| | | SUBDIRS = modules |
| | | |
| | | clean all install lint: |
| | |
| | | # |
| | | ############################################################################### |
| | | |
| | | include $(TOP)/Makefile.inc |
| | | |
| | | include $(TOP)/Makefile.rules |
| | | |
| | | |
| | | BUILD_TYPE = 64 |
| | | |
| | |
| | | CFLAGS += -D_ELF64 -DMDB_DEBUG -D_KERNEL -D_KMDB -g -m64 |
| | | CPPFLAGS += -I$(TOP) -I$(TOP)/sys/drm -I$(TOP)/sys -I/usr/include |
| | | KMOD_LDFLAGS = -dy -r -Nmisc/kmdbmod |
| | | SO_LDFLAGS = $(LDFLAGS) -Wl,-z,direct -Wl,-z,text -M mapfile |
| | | SO_LDFLAGS += -Wl,-z,parent=/usr/bin$(ARCHLIBSUBDIR)/mdb |
| | | SO_LDFLAGS = $(LDFLAGS) -Wl,-z,direct -Wl,-z,text -Wl,-Mmapfile |
| | | CPPFLAGS += -O3 -m64 -Ui386 -U__i386 -g \ |
| | | -DTEXT_DOMAIN=\"SUNW_OST_OSCMD\" -D_ERRNO_VERIFY -DMDB_DEBUG \ |
| | | -D_KERNEL -D_ELF64 |
| | |
| | | .NO_PARALLEL: |
| | | .PARALLEL: $(OBJECTS) $(LINTFILES) |
| | | |
| | | $(OBJECTS): $(SOURCES) |
| | | @print CFLAGS=$(CFLAGS) |
| | | %.o: %.c |
| | | $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ |
| | | $(CTFCONVERT) $(CTFCVTFLAGS) $@ |
| | | |
| | |
| | | $(CTFMERGE) $(CTFMERGE_LABEL) -o $@ $(OBJECTS) |
| | | |
| | | $(MDBMOD): $(OBJECTS) |
| | | $(CC) $(CFLAGS) -fPIC -DPIC $(CPPFLAGS) -G -o $@ $(SOURCES) $(LDFLAGS) \ |
| | | $(CC) $(CFLAGS) -fPIC -DPIC $(CPPFLAGS) -shared -o $@ $(SOURCES) $(LDFLAGS) \ |
| | | $(SO_LDFLAGS) $(LIBS) |
| | | |
| | | install: $(MODULES) |
| | | @print Installing $(KMOD) in $(PROTODIR)$(ROOT_KMOD_DIR) |
| | | @print Installing $(MDBMOD) in $(PROTODIR)$(ROOT_MDB_DIR) |
| | | @mkdir -p $(PROTODIR)$(ROOT_KMOD_DIR) |
| | | @mkdir -p $(PROTODIR)$(ROOT_MDB_DIR) |
| | | @$(INSTALL_SCRIPT) -m 555 $(KMOD) $(PROTODIR)$(ROOT_KMOD_DIR) |
| | | @$(INSTALL_SCRIPT) -m 555 $(MDBMOD) $(PROTODIR)$(ROOT_MDB_DIR) |
| | | @print Installing $(KMOD) in $(DESTDIR)$(ROOT_KMOD_DIR) |
| | | @print Installing $(MDBMOD) in $(DESTDIR)$(ROOT_MDB_DIR) |
| | | @mkdir -p $(DESTDIR)$(ROOT_KMOD_DIR) |
| | | @mkdir -p $(DESTDIR)$(ROOT_MDB_DIR) |
| | | @$(INSTALL) -m 555 $(KMOD) $(DESTDIR)$(ROOT_KMOD_DIR) |
| | | @$(INSTALL) -m 555 $(MDBMOD) $(DESTDIR)$(ROOT_MDB_DIR) |
| | | |
| | | clean: |
| | | rm -f $(OBJECTS) $(BC_OBJS) $(MODULES) |
| | |
| | | #include <sys/mdb_modapi.h> |
| | | #include <sys/proc.h> |
| | | |
| | | #include <sys/drm/drmP.h> |
| | | #include <i915/src/i915_drv.h> |
| | | #include <i915/src/i915_drm.h> |
| | | #include <i915/src/intel_drv.h> |
| | | |
| | | #include "drmP.h" |
| | | #include "i915/src/i915_drv.h" |
| | | #include "i915/src/i915_drm.h" |
| | | #include "i915/src/intel_drv.h" |
| | | |
| | | /* |
| | | * Defines |
New file |
| | |
| | | # |
| | | # This file and its contents are supplied under the terms of the |
| | | # Common Development and Distribution License ("CDDL"), version 1.0. |
| | | # You may only use this file in accordance with the terms of version |
| | | # 1.0 of the CDDL. |
| | | # |
| | | # A full copy of the text of the CDDL should have accompanied this |
| | | # source. A copy of the CDDL is also available via the Internet at |
| | | # http://www.illumos.org/license/CDDL. |
| | | # |
| | | |
| | | # |
| | | # Copyright 2016 <contributor> |
| | | # |
| | | |
| | | set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION) |
| | | set name=pkg.summary value="$(COMPONENT_SUMMARY)" |
| | | set name=info.classification value="$(COMPONENT_CLASSIFICATION)" |
| | | set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) |
| | | set name=info.source-url value=$(COMPONENT_ARCHIVE_URL) |
| | | set name=org.opensolaris.consolidation value=$(CONSOLIDATION) |
| | | |
| | | license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)' |
| | | |
| | | file path=kernel/drv/$(MACH64)/i915 |
| | | file path=kernel/kmdb/$(MACH64)/i915 |
| | | file path=kernel/misc/$(MACH64)/drm |
| | | file path=usr/lib/mdb/kvm/$(MACH64)/i915.so |
| | | file path=usr/share/man/man4d/i915.4d |