diff --git a/.gitignore b/.gitignore index f13bc4e..dc01ca8 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/nvidia-settings-352.21.tar.bz2 +SOURCES/nvidia-settings-565.57.01.tar.bz2 diff --git a/.libXNVCtrl.metadata b/.libXNVCtrl.metadata index 150d466..4fcfd81 100644 --- a/.libXNVCtrl.metadata +++ b/.libXNVCtrl.metadata @@ -1 +1 @@ -0c2d91e0fe941d7ff638bc55fb816528199e1241 SOURCES/nvidia-settings-352.21.tar.bz2 +23bdaf37eef78d0752250f6b79574cc00df3a6d8 SOURCES/nvidia-settings-565.57.01.tar.bz2 diff --git a/SOURCES/libxnvctrl_optflags.patch b/SOURCES/libxnvctrl_optflags.patch deleted file mode 100644 index 61c6ae2..0000000 --- a/SOURCES/libxnvctrl_optflags.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/src/libXNVCtrl/Makefile.orig 2015-01-16 15:29:38.678963363 +0100 -+++ b/src/libXNVCtrl/Makefile 2015-01-16 15:32:50.571028309 +0100 -@@ -38,7 +38,7 @@ - LIBXNVCTRL_VERSION := $(NVIDIA_VERSION) - - CFLAGS += -I . --CFLAGS += -fPIC -+CFLAGS += -fPIC $(OPTFLAGS) - CFLAGS += -I $(OUTPUTDIR) - CFLAGS += -DPROGRAM_NAME=\"$(LIBXNVCTRL_PROGRAM_NAME)\" - ---- a/src/libXNVCtrl/utils.mk.orig 2015-01-16 15:29:43.918964321 +0100 -+++ b/src/libXNVCtrl/utils.mk 2015-01-16 15:32:23.298020384 +0100 -@@ -31,7 +31,7 @@ - # only set these warnings and optimizations if CFLAGS is unset - CFLAGS ?= -Wall -O2 - # always set these -f CFLAGS --CFLAGS += -fno-strict-aliasing -fno-omit-frame-pointer -Wformat=2 -+CFLAGS += $(OPTFLAGS) - CC_ONLY_CFLAGS ?= - LDFLAGS ?= - BIN_LDFLAGS ?= diff --git a/SOURCES/libxnvctrl_so_0.patch b/SOURCES/libxnvctrl_so_0.patch index 3d99a6f..73b2b34 100644 --- a/SOURCES/libxnvctrl_so_0.patch +++ b/SOURCES/libxnvctrl_so_0.patch @@ -1,67 +1,25 @@ ---- a/src/Makefile -+++ b/src/Makefile -@@ -106,6 +106,9 @@ - XNVCTRL_DIR ?= libXNVCtrl - XNVCTRL_MAKEFILE ?= Makefile - XNVCTRL_ARCHIVE ?= $(XNVCTRL_DIR)/libXNVCtrl.a -+XNVCTRL_SHARED ?= $(XNVCTRL_DIR)/libXNVCtrl.so.0 -+#XNVCTRL_LIB ?= $(XNVCTRL_ARCHIVE) -+XNVCTRL_LIB ?= $(XNVCTRL_SHARED) - XCONFIG_PARSER_DIR ?= XF86Config-parser - COMMON_UTILS_DIR ?= common-utils - COMMON_UNIX_DIR ?= common-unix -@@ -280,14 +283,17 @@ - $(MKDIR) $(BINDIR) - $(INSTALL) $(INSTALL_BIN_ARGS) $< $(BINDIR)/$(notdir $<) +diff --git a/src/libXNVCtrl/xnvctrl.mk b/src/libXNVCtrl/xnvctrl.mk +index e6be2ef..c0921c4 100644 +--- a/src/libXNVCtrl/xnvctrl.mk ++++ b/src/libXNVCtrl/xnvctrl.mk +@@ -39,6 +39,11 @@ XNVCTRL_CFLAGS ?= --$(NVIDIA_SETTINGS): $(OBJS) $(XNVCTRL_ARCHIVE) -+$(XNVCTRL_ARCHIVE) $(XNVCTRL_SHARED): -+ $(MAKE) -C $(XNVCTRL_DIR) -+ -+$(NVIDIA_SETTINGS): $(OBJS) $(XNVCTRL_LIB) - $(call quiet_cmd,LINK) $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ -- -rdynamic -o $@ $(OBJS) $(XNVCTRL_ARCHIVE) $(LIBS) -+ -rdynamic -o $@ $(OBJS) $(XNVCTRL_LIB) $(LIBS) - $(call quiet_cmd,STRIP_CMD) $@ - - $(GTK2LIB): $(GTK2_OBJS) $(XCP_OBJS) $(VERSION_MK) - $(call quiet_cmd,LINK) -shared $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ -- $(XNVCTRL_ARCHIVE) $(LIBS) $(GTK2_LIBS) \ -+ $(XNVCTRL_LIB) $(LIBS) $(GTK2_LIBS) \ - -Wl,--unresolved-symbols=ignore-all -o $(GTK2LIB) \ - -Wl,-soname -Wl,$(GTK2LIB_SONAME) \ - $(GTK2_OBJS) $(XCP_OBJS) -@@ -296,7 +302,7 @@ - ifdef BUILD_GTK3LIB - $(GTK3LIB): $(GTK3_OBJS) $(XCP_OBJS) $(VERSION_MK) - $(call quiet_cmd,LINK) -shared $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ -- $(XNVCTRL_ARCHIVE) $(LIBS) $(GTK3_LIBS) \ -+ $(XNVCTRL_LIB) $(LIBS) $(GTK3_LIBS) \ - -Wl,--unresolved-symbols=ignore-all -o $(GTK3LIB) \ - -Wl,-soname -Wl,$(GTK3LIB_SONAME) \ - $(GTK3_OBJS) $(XCP_OBJS) ---- a/src/libXNVCtrl/Makefile -+++ b/src/libXNVCtrl/Makefile -@@ -55,10 +55,17 @@ - .PHONY: clean + LIBXNVCTRL = $(OUTPUTDIR)/libXNVCtrl.a - all: $(LIBXNVCTRL) -+all: libXNVCtrl.so ++LIBXNVCTRL_SHARED = $(OUTPUTDIR)/libXNVCtrl.so ++LIBXNVCTRL_ABI_VERSION_MAJOR = 0 ++LIBXNVCTRL_ABI_VERSION_MINOR = 0 ++LIBXNVCTRL_LIBS += -lXext -lX11 ++ + LIBXNVCTRL_SRC = $(XNVCTRL_DIR)/NVCtrl.c - $(LIBXNVCTRL) : $(OBJS) - $(AR) ru $@ $(OBJS) + LIBXNVCTRL_OBJ = $(call BUILD_OBJECT_LIST,$(LIBXNVCTRL_SRC)) +@@ -47,3 +52,8 @@ $(eval $(call DEFINE_OBJECT_RULE,TARGET,$(LIBXNVCTRL_SRC))) -+libXNVCtrl.so: $(OBJS) -+ $(RM) $@ $@.* -+ $(CC) -shared -Wl,-soname=$@.0 -o $@.0.0.0 $(LDFLAGS) $^ -lXext -lX11 -+ ln -s $@.0.0.0 $@.0 -+ ln -s $@.0 $@ + $(LIBXNVCTRL) : $(LIBXNVCTRL_OBJ) + $(call quiet_cmd,AR) ru $@ $(LIBXNVCTRL_OBJ) + - # define the rule to build each object file - $(foreach src,$(SRC),$(eval $(call DEFINE_OBJECT_RULE,TARGET,$(src)))) - -@@ -68,3 +75,4 @@ - clean: - rm -rf $(LIBXNVCTRL) *~ $(STAMP_C) \ - $(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d -+ rm -f libXNVCtrl.so libXNVCtrl.so.* ++libXNVCtrl.so : $(LIBXNVCTRL_OBJ) ++ $(CC) -shared $(CFLAGS) $(LDFLAGS) -Wl,-soname=$(notdir $@).${LIBXNVCTRL_ABI_VERSION_MAJOR} -o $@.$(LIBXNVCTRL_ABI_VERSION_MAJOR).$(LIBXNVCTRL_ABI_VERSION_MINOR).0 $^ $(LIBXNVCTRL_LIBS) ++ ln -s $(notdir $@).$(LIBXNVCTRL_ABI_VERSION_MAJOR).$(LIBXNVCTRL_ABI_VERSION_MINOR).0 $@ ++ ln -s $(notdir $@).$(LIBXNVCTRL_ABI_VERSION_MAJOR).$(LIBXNVCTRL_ABI_VERSION_MINOR).0 $@.$(LIBXNVCTRL_ABI_VERSION_MAJOR) diff --git a/SPECS/libXNVCtrl.spec b/SPECS/libXNVCtrl.spec index 3b0bf59..449e9e6 100644 --- a/SPECS/libXNVCtrl.spec +++ b/SPECS/libXNVCtrl.spec @@ -1,32 +1,47 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.3) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 1; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + Name: libXNVCtrl -Version: 352.21 -Release: 9%{?dist} +Version: 565.57.01 +Release: %autorelease Summary: Library providing the NV-CONTROL API -License: GPLv2+ -URL: ftp://download.nvidia.com/XFree86/nvidia-settings/ -Source0: ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-%{version}.tar.bz2 -Patch0: libxnvctrl_so_0.patch -Patch1: libxnvctrl_optflags.patch - -BuildRequires: gcc -BuildRequires: make -BuildRequires: libX11-devel -BuildRequires: libXext-devel -BuildRequires: hostname +License: GPL-2.0-or-later +URL: https://download.nvidia.com/XFree86/nvidia-settings +Source: %{url}/nvidia-settings-%{version}.tar.bz2 +Patch: libxnvctrl_so_0.patch + +BuildRequires: gcc +BuildRequires: hostname +BuildRequires: make +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xext) + +# Obsoletes older package provided in the NVIDIA CUDA repository +Obsoletes: nvidia-%{name} < 3:%{version}-100 +Provides: nvidia-%{name} = 3:%{version}-100 %description This packages contains the libXNVCtrl library from the nvidia-settings application. This library provides the NV-CONTROL API for communicating with -the proprietary NVidia xorg driver. This package does not contain the +the proprietary NVIDIA xorg driver. This package does not contain the nvidia-settings tool itself as that is included with the proprietary drivers -themselves. +themselves. %package devel Summary: Development files for %{name} -Group: Development/Libraries Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libX11-devel +Requires: libX11-devel%{?_isa} +# Obsoletes older package provided in the NVIDIA CUDA repository +Obsoletes: nvidia-%{name}-devel < 3:%{version}-100 +Provides: nvidia-%{name}-devel = 3:%{version}-100 %description devel The %{name}-devel package contains libraries and header files for @@ -34,47 +49,112 @@ developing applications that use %{name}. %prep -%setup -q -n nvidia-settings-%{version} -%patch0 -p1 -%patch1 -p1 +%autosetup -p1 -n nvidia-settings-%{version} %build -make %{?_smp_mflags} \ - CC="gcc" \ +%make_build \ + CC="%{__cc}" \ NV_VERBOSE=1 \ - OPTFLAGS="%{optflags}" \ - LDFLAGS="%{build_ldflags}" \ - -C src/%{name} + DO_STRIP=0 \ + STRIP_CMD=/bin/true \ + -C src/%{name} \ + libXNVCtrl.so %install pushd src/%{name} -install -m 0755 -d $RPM_BUILD_ROOT%{_libdir}/ -install -p -m 0755 libXNVCtrl.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/ -ln -s libXNVCtrl.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libXNVCtrl.so.0 -ln -s libXNVCtrl.so.0 $RPM_BUILD_ROOT%{_libdir}/libXNVCtrl.so -install -m 0755 -d $RPM_BUILD_ROOT%{_includedir}/NVCtrl/ -install -p -m 0644 {nv_control,NVCtrl,NVCtrlLib}.h $RPM_BUILD_ROOT%{_includedir}/NVCtrl/ +install -m 0755 -d %{buildroot}%{_libdir}/ +cp -Prp libXNVCtrl.so* %{buildroot}%{_libdir}/ +install -m 0755 -d %{buildroot}%{_includedir}/NVCtrl/ +install -p -m 0644 *.h %{buildroot}%{_includedir}/NVCtrl/ popd -%ldconfig_post - -%ldconfig_postun - - %files -%doc COPYING +%license COPYING %{_libdir}/%{name}.so.0* %files devel %doc doc/NV-CONTROL-API.txt doc/FRAMELOCK.txt -%{_includedir}/NVCtrl +%{_includedir}/NVCtrl/ %{_libdir}/%{name}.so %changelog +* Mon Dec 23 2024 Arkady L. Shane - 565.57.01-1 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Tue Nov 19 2024 Nicolas Chauvet - 565.57.01-1 +- Update to 565.57.01 + +* Wed Sep 18 2024 Nicolas Chauvet - 560.35.03-3 +- Add obsoltes for the devel package also + +* Wed Sep 18 2024 Nicolas Chauvet - 560.35.03-2 +- Fixup strip + +* Wed Sep 18 2024 Nicolas Chauvet - 560.35.03-1 +- Update to 560.35.03 + +* Thu Jul 18 2024 Fedora Release Engineering - 535.113.01-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu Jan 25 2024 Fedora Release Engineering - 535.113.01-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 535.113.01-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Oct 10 2023 Nicolas Chauvet - 535.113.01-2 +- Remove vendor special case + +* Tue Oct 10 2023 Pavel Solovev - 535.113.01-1 +- update to 535.113.01 +- Migrated license tag to SPDX + +* Thu Jul 20 2023 Fedora Release Engineering - 435.17-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jan 19 2023 Fedora Release Engineering - 435.17-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jul 21 2022 Fedora Release Engineering - 435.17-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 435.17-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 435.17-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 435.17-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 435.17-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jan 29 2020 Fedora Release Engineering - 435.17-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jan 17 2020 Tom Stellard - 435.17-2 +- Replace hard-coded gcc with __cc macro + +* Mon Aug 26 2019 Nicolas Chauvet - 435.17-1 +- Update to 435.17 +- Obsoletes older nvidia-libXNVCtrl from cuda repo +- Switch URL to https + +* Thu Jul 25 2019 Fedora Release Engineering - 352.21-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 352.21-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 352.21-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Fri Jun 29 2018 Adam Jackson - 352.21-9 - Use ldconfig scriptlet macros @@ -162,3 +242,5 @@ popd * Sun Jul 15 2007 Hans de Goede 1.0-1 - Initial Fedora Extras version + +## END: Generated by rpmautospec