Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:HEBH
displaylink
displaylink.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File displaylink.spec of Package displaylink
# # spec file for package displaylink # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %bcond_without check %global debug_package %{nil} %if 0%{?rhel} %global kernel_pkg_name kernel-mt %else %global kernel_pkg_name kernel %endif %if 0%{?is_opensuse} || 0%{?rhel} %global kernel_headers_name %{kernel_pkg_name}-default %else %global kernel_headers_name %{kernel_pkg_name}-headers %endif %if 0%{?is_opensuse} && 0%{?sle_version} == 0 %global source_date_epoch_from_changelog 0 %endif %define _dllibdirorig /usr/libexec/displaylink %define _dllibdir %{_libdir}/dl %define _daemon_version 6.0.0-24 %define _daemon_major_version 6.0.0 %define _daemon_file_version 6.0.0-EXE %define _evdi_version 1.14.7 %define _evdi_dir evdi-%{_evdi_version} #%define _unpackaged_files_terminate_build 0 Name: displaylink Version: 6.0.0 Release: 0 Summary: DisplayLink VGA/HDMI driver for DL-6xxx, DL-5xxx, DL-41xx and DL-3xxx adapters License: GPL-2.0 and LGPL-2.1 and Proprietary Group: Hardware/Other Url: https://github.com/displaylink-rpm/displaylink-rpm Source0: https://github.com/DisplayLink/evdi/archive/v%{_evdi_version}.tar.gz#/evdi-%{_evdi_version}.tar.gz Source1: %{name}.service Source2: 99-%{name}.rules Source3: displaylink-sleep-extractor.sh # From http://www.displaylink.com/downloads/ubuntu.php Source4: DisplayLink_USB_Graphics_Software_for_Ubuntu%{_daemon_file_version}.zip Source5: 20-%{name}.conf Patch0: global.patch Patch1: opensuse15.5.patch Patch2: Tumbleweed.patch ExclusiveArch: i386 x86_64 BuildRequires: chrpath BuildRequires: dkms BuildRequires: libdrm-devel BuildRequires: systemd-rpm-macros %{?systemd_requires} BuildRequires: udev BuildRequires: unzip BuildRequires: -post-build-checks BuildRequires: %{kernel_headers_name} > 4.7 BuildRequires: %{kernel_pkg_name}-devel > 4.7 Requires: %{kernel_pkg_name} > 4.7 Requires: %{kernel_pkg_name}-devel > 4.7 Requires: %{kernel_headers_name} > 4.7 Requires: dkms # %if 0%{?fedora} > 39 # BuildRequires: libzstd-devel # %endif %description This adds support for HDMI/VGA adapters built upon the DisplayLink DL-6xxx, DL-5xxx, DL-41xx and DL-3xxx series of chipsets. This includes numerous docking stations, USB monitors, and USB adapters. %prep %setup -q -c %{_evdi_dir} cd %{_evdi_dir} unzip "%{SOURCE4}" chmod +x displaylink-driver-%{_daemon_version}.run ./displaylink-driver-%{_daemon_version}.run --noexec --keep # This creates a displaylink-driver-$version subdirectory # %if 0%{?is_opensuse} && 0%{?sle_version} == 0 %patch -P2 -p1 %endif # # # %if 0%{?fedora} # %patch0 -p1 # %endif %if 0%{?sle_version} == 150500 && 0%{?is_opensuse} %patch -P1 -p1 %endif %build cd %{_evdi_dir}/library/ make %{?_smp_mflags} %install mkdir -p %{buildroot}%{_dllibdir} \ %{buildroot}/usr/src/evdi-%{_evdi_version}/ \ %{buildroot}/usr/lib/systemd/system/ \ %{buildroot}/usr/lib/systemd/system-sleep \ %{buildroot}/usr/lib/udev/rules.d/ \ %{buildroot}/etc/X11/xorg.conf.d/ \ %{buildroot}/var/log/displaylink/ \ %{buildroot}%{_sbindir} ln -s service %{buildroot}%{_sbindir}/rc%{name} # Kernel driver sources cp -a %{_evdi_dir}/module/* %{buildroot}/usr/src/evdi-%{_evdi_version} # Library cp %{_evdi_dir}/library/libevdi.so.%{_evdi_version} %{buildroot}%{_dllibdir}/ ln -sf libevdi.so.%{_evdi_version} %{buildroot}%{_dllibdir}/libevdi.so.0 ln -sf libevdi.so.0 %{buildroot}%{_dllibdir}/libevdi.so # Binaries # Don't copy libusb-1.0.so.0.1.0 it's already shipped by libusbx # Don't copy libevdi.so, we compiled it from source #tree . #cd {_evdi_dir}/displaylink-driver-{_daemon_version} cd %{_evdi_dir}/displaylink-driver-%{_daemon_major_version} sed -i 's/\r//' LICENSE chmod -x LICENSE cp LICENSE ../.. %ifarch x86_64 cp -a x64-ubuntu-1604/DisplayLinkManager %{buildroot}%{_dllibdir} %endif %ifarch %ix86 cp -a x86-ubuntu-1604/DisplayLinkManager %{buildroot}%{_dllibdir} %endif chrpath -r %{_dllibdir} %{buildroot}%{_dllibdir}/DisplayLinkManager # Firmwares cp -a ella-dock-release.spkg firefly-monitor-release.spkg %{buildroot}%{_dllibdir} # systemd/udev sed -i "s_%{_dllibdirorig}_%{_dllibdir}_" %{SOURCE1} cp -a %{SOURCE1} %{buildroot}/usr/lib/systemd/system/ cp -a %{SOURCE2} %{buildroot}/usr/lib/udev/rules.d/ cp -a %{SOURCE5} %{buildroot}/etc/X11/xorg.conf.d/ # pm-util bash %{SOURCE3} displaylink-installer.sh > %{buildroot}/usr/lib/systemd/system-sleep/%{name}.sh chmod +x %{buildroot}/usr/lib/systemd/system-sleep/%{name}.sh %check %if 0%{?is_opensuse} && 0%{?sle_version} != 0 CHECKDIR=%{_tmppath}/evdi-dkms-check mkdir -p $CHECKDIR DKMS_ARGS="--dkmstree $CHECKDIR \ --sourcetree %{buildroot}/usr/src --installtree $CHECKDIR \ -k `rpm -q -v %{kernel_headers_name} |sed 's/.*[a-z]-\([0-9.lp-]\+\)\.[0-9].*/\1-default/'`" %if %{with check} /usr/sbin/dkms $DKMS_ARGS build -m evdi -v %{_evdi_version} || (cat $CHECKDIR/evdi/%{_evdi_version}/build/make.log && exit 10) %else /usr/sbin/dkms $DKMS_ARGS build -m evdi -v %{_evdi_version} || cat $CHECKDIR/evdi/%{_evdi_version}/build/make.log %endif %endif %pre %if 0%{?is_opensuse} %service_add_pre %{name}.service %endif %post %if 0%{?is_opensuse} %service_add_post %{name}.service %else %systemd_post %{name}.service %endif /usr/bin/systemctl -q is-enabled dkms.service || echo "warning: dkms service not enabled." %preun %if 0%{?is_opensuse} %service_del_preun %{name}.service %else %systemd_preun %{name}.service %endif /usr/sbin/dkms remove -m evdi -v %{_evdi_version} -q --all || : rm -Rf /var/lib/dkms/evdi/%{_evdi_version} %postun # restart later in posttrans %if 0%{?is_opensuse} %service_del_postun_without_restart %{name}.service %else %systemd_postun %{name}.service %endif # as suggested by https://github.com/dell/dkms/issues/25#issuecomment-360275619 %posttrans /usr/sbin/dkms add -m evdi -v %{_evdi_version} || : /usr/sbin/dkms install -m evdi -v %{_evdi_version} -q --force || : /usr/bin/systemctl restart %{name}.service %files %doc LICENSE /usr/lib/systemd/system/%{name}.service /usr/lib/systemd/system-sleep/%{name}.sh /usr/lib/udev/rules.d/99-%{name}.rules %config /etc/X11/xorg.conf.d/20-%{name}.conf %dir /usr/src/evdi-%{_evdi_version} /usr/src/evdi-%{_evdi_version}/* %dir %{_dllibdir} %{_dllibdir}/* %dir /var/log/displaylink/ %{_sbindir}/rc%{name} %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor