From 4a6ae5f3cfcb6fa685651378a4e9d2d3180ed396 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Thu, 1 Aug 2019 20:46:40 -0400 Subject: [PATCH] import libXNVCtrl-352.21-9.el8 --- .gitignore | 1 + .libXNVCtrl.metadata | 1 + SOURCES/libxnvctrl_optflags.patch | 22 ++++ SOURCES/libxnvctrl_so_0.patch | 67 ++++++++++++ SPECS/libXNVCtrl.spec | 164 ++++++++++++++++++++++++++++++ 5 files changed, 255 insertions(+) create mode 100644 .gitignore create mode 100644 .libXNVCtrl.metadata create mode 100644 SOURCES/libxnvctrl_optflags.patch create mode 100644 SOURCES/libxnvctrl_so_0.patch create mode 100644 SPECS/libXNVCtrl.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f13bc4e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/nvidia-settings-352.21.tar.bz2 diff --git a/.libXNVCtrl.metadata b/.libXNVCtrl.metadata new file mode 100644 index 0000000..150d466 --- /dev/null +++ b/.libXNVCtrl.metadata @@ -0,0 +1 @@ +0c2d91e0fe941d7ff638bc55fb816528199e1241 SOURCES/nvidia-settings-352.21.tar.bz2 diff --git a/SOURCES/libxnvctrl_optflags.patch b/SOURCES/libxnvctrl_optflags.patch new file mode 100644 index 0000000..61c6ae2 --- /dev/null +++ b/SOURCES/libxnvctrl_optflags.patch @@ -0,0 +1,22 @@ +--- 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 new file mode 100644 index 0000000..3d99a6f --- /dev/null +++ b/SOURCES/libxnvctrl_so_0.patch @@ -0,0 +1,67 @@ +--- 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 $<) + +-$(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 + + all: $(LIBXNVCTRL) ++all: libXNVCtrl.so + + $(LIBXNVCTRL) : $(OBJS) + $(AR) ru $@ $(OBJS) + ++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 $@ ++ + # 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.* diff --git a/SPECS/libXNVCtrl.spec b/SPECS/libXNVCtrl.spec new file mode 100644 index 0000000..3b0bf59 --- /dev/null +++ b/SPECS/libXNVCtrl.spec @@ -0,0 +1,164 @@ +Name: libXNVCtrl +Version: 352.21 +Release: 9%{?dist} +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 + +%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 +nvidia-settings tool itself as that is included with the proprietary drivers +themselves. + + +%package devel +Summary: Development files for %{name} +Group: Development/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: libX11-devel + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + + +%prep +%setup -q -n nvidia-settings-%{version} +%patch0 -p1 +%patch1 -p1 + + +%build +make %{?_smp_mflags} \ + CC="gcc" \ + NV_VERBOSE=1 \ + OPTFLAGS="%{optflags}" \ + LDFLAGS="%{build_ldflags}" \ + -C src/%{name} + + +%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/ +popd + + +%ldconfig_post + +%ldconfig_postun + + +%files +%doc COPYING +%{_libdir}/%{name}.so.0* + +%files devel +%doc doc/NV-CONTROL-API.txt doc/FRAMELOCK.txt +%{_includedir}/NVCtrl +%{_libdir}/%{name}.so + + +%changelog +* Fri Jun 29 2018 Adam Jackson - 352.21-9 +- Use ldconfig scriptlet macros + +* Sat Feb 24 2018 Florian Weimer - 352.21-8 +- Use LDFLAGS from redhat-rpm-config +- Add "BuildRequires: gcc" +- Remove "Group:" + +* Wed Feb 07 2018 Fedora Release Engineering - 352.21-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 352.21-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 352.21-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 352.21-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 352.21-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Jul 09 2015 Leigh Scott - 352.21-2 +- fix build flags + +* Thu Jul 09 2015 Wolfgang Ulbrich - 352.21-1 +- update to latest 352.21 release + +* Wed Jun 17 2015 Fedora Release Engineering - 169.12-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Aug 17 2014 Fedora Release Engineering - 169.12-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 169.12-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Aug 03 2013 Fedora Release Engineering - 169.12-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 169.12-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 169.12-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 169.12-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Mon Feb 07 2011 Fedora Release Engineering - 169.12-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Jul 24 2009 Fedora Release Engineering - 169.12-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Wed Feb 25 2009 Fedora Release Engineering - 169.12-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Wed Oct 08 2008 Dennis Gilmore 169.12-2 +- make sure libdir is set right on sparc64 + +* Wed Mar 5 2008 Hans de Goede 169.12-1 +- Update to new upstream 169.12 release (talking about version inflation) + +* Tue Feb 19 2008 Hans de Goede 1.0-7 +- Rebase to latest upstream, which is still called 1.0 (GRRRR) + +* Tue Feb 19 2008 Fedora Release Engineering - 1.0-6 +- Autorebuild for GCC 4.3 + +* Mon Aug 13 2007 Hans de Goede 1.0-5 +- Update License tag for new Licensing Guidelines compliance + +* Fri Jul 27 2007 Hans de Goede 1.0-4 +- Add missing libXext-devel BuildRequires + +* Fri Jul 27 2007 Hans de Goede 1.0-3 +- Link the lib against libX11 and libXext to avoid undefined non weak symbols + (through updated libXNVCtrl-imake.patch) + +* Sun Jul 22 2007 Hans de Goede 1.0-2 +- Honor optflags +- Preserve timestamps of headers when installing them + +* Sun Jul 15 2007 Hans de Goede 1.0-1 +- Initial Fedora Extras version