From 12ae965f84c8f8fef8c44c6057201d2353385966 Mon Sep 17 00:00:00 2001 From: zyppe <210hcl@gmail.com> Date: Tue, 6 Feb 2024 18:24:30 +0800 Subject: [PATCH] Initialize for crda --- .crda.metadata | 1 + .gitignore | 1 + crda.changes | 57 +++++++++++++++++++++++++++++++++ crda.spec | 74 +++++++++++++++++++++++++++++++++++++++++++ gcc6-fix-errors.patch | 42 ++++++++++++++++++++++++ 5 files changed, 175 insertions(+) create mode 100644 .crda.metadata create mode 100644 .gitignore create mode 100644 crda.changes create mode 100644 crda.spec create mode 100644 gcc6-fix-errors.patch diff --git a/.crda.metadata b/.crda.metadata new file mode 100644 index 0000000..1cb944d --- /dev/null +++ b/.crda.metadata @@ -0,0 +1 @@ +fbaef8d62a8a3a6ebdc00729f4395ffbf6103130b8ebef9cba02812c7128d011 crda-3.18.tar.xz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1955750 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +crda-3.18.tar.xz diff --git a/crda.changes b/crda.changes new file mode 100644 index 0000000..064cadf --- /dev/null +++ b/crda.changes @@ -0,0 +1,57 @@ +* Sat Jun 3 2017 meissner@suse.com +- adjust Makefile patch to not include CFLAGS on linker line, + this indirectly enables PIE support. +* Wed May 25 2016 martin.liska@suse.com +- Add gcc6-fix-errors.patch to remove errors seen by GCC6. +* Sun Jun 28 2015 seife+obs@b1-systems.com +- update to version 3.18: + * user visible: add pubkey of new wireless-regdb maintainer to + make crda work at all with newer wireless-regdb + * synchronize code with latest kernel changes + * crda: add AUTO-BW rule flag support + * crda: parse/print CAC time + * code restructuring and bug fixes + * ** License is now copyleft-next-0.3.0 *** +- packaging: + * add V=1 to make calls for rpmlint happiness + * use %%%%optflags for compilation + * shared library libreg.so is now used by the tools +* Sun Nov 24 2013 crrodriguez@opensuse.org +- use libnl3 which is now supported +* Sat Nov 23 2013 crrodriguez@opensuse.org +- update to 1.1.3 release (no changelog) +- run %%udev_rules_update in %%post if defined +- Correct _udevrulesdir definition for old distros +* Fri Mar 22 2013 mmeister@suse.com +- Added url as source. + Please see http://en.opensuse.org/SourceUrls +* Wed Oct 17 2012 fcrozat@suse.com +- Fix build with udev rules directory new location. +* Thu Sep 13 2012 cfarrell@suse.com +- license update: ISC + License is ISC, not BSD-3-Clause +* Sun Sep 9 2012 p.drouand@gmail.com +- update to 1.1.2 release +* Tue Feb 28 2012 pcerny@suse.com +- use correct filepath in udev rule +* Sat Feb 4 2012 rschweikert@suse.com +- put files in /usr tree (UsrMerge project) +* Sat Sep 17 2011 jengelh@medozas.de +- Remove redundant tags/sections from specfile +- Use %%_smp_mflags for parallel build +* Fri Sep 16 2011 jengelh@medozas.de +- Select libnl-1_1-devel +* Fri Mar 5 2010 ro@suse.de +- update to 1.1.1 release +* Sat Oct 10 2009 crrodriguez@opensuse.org +- update to git200910101747, fix build +* Tue Jul 28 2009 aj@suse.de +- Update to crda 1.1.0: + * make openssl keys 64-bit safe +* Mon Mar 2 2009 hschaa@suse.de +- Add "Supplements: kernel" and "Requires: wireless-regdb" +* Mon Feb 9 2009 hschaa@suse.de +- Update to 1.0.1 +- Needed for fate#305301 +* Wed Jan 24 2007 helmut.schaa@googlemail.com +- Initial package diff --git a/crda.spec b/crda.spec new file mode 100644 index 0000000..aab0ace --- /dev/null +++ b/crda.spec @@ -0,0 +1,74 @@ +# +# spec file for package crda +# +# Copyright (c) 2022-2023 ZhuningOS +# + + +%{!?_udevrulesdir: %global _udevrulesdir %(pkg-config --variable=udevdir udev)/rules.d } + +Url: http://linuxwireless.org/en/developers/Regulatory/CRDA + +Name: crda +Summary: 802.11 central regulatory domain agent +License: SUSE-Copyleft-Next-0.3.0 +Group: Hardware/Wifi +Version: 3.18 +Release: 1.34 +Source: http://kernel.org/pub/software/network/crda/crda-%{version}.tar.xz +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: libgcrypt-devel +BuildRequires: pkg-config +BuildRequires: python +BuildRequires: python-m2crypto +BuildRequires: wireless-regdb +BuildRequires: pkgconfig(libnl-3.0) +BuildRequires: pkgconfig(udev) +Requires: wireless-regdb +Supplements: kernel >= 2.6.29 +# PATCH-FIX-OPENSUSE gcc6-fix-errors.patch -- Fix errors seen by GCC6. +Patch0: gcc6-fix-errors.patch + +%description +The crda binary provides access to the wireless-regdb to the kernel +through udev. + +%prep +%setup -q +%patch0 -p1 +# make install calls 'ldconfig' and fails if it cannot run it... +ln -s /bin/true ldconfig + +%build +export CFLAGS="%{optflags}" +make all_noverify %{?_smp_mflags} V=1 + +%install +# to find ldconfig... +export PATH=.:$PATH +make DESTDIR=$RPM_BUILD_ROOT SBINDIR=%{_sbindir}/ UDEV_RULE_DIR=%{_udevrulesdir} LIBDIR=%{_libdir} install +#UsrMerge +mkdir $RPM_BUILD_ROOT/sbin +ln -sf %{_sbindir}/{crda,regdbdump} $RPM_BUILD_ROOT/sbin +#EndUserMerge + +# clean up unneeded stuff... +rm -r %{buildroot}/usr/include/reglib + +%files +%defattr(-,root,root) +%_sbindir/crda +%_sbindir/regdbdump +%_libdir/libreg.so +#UsrMerge +/sbin/crda +/sbin/regdbdump +#EndUserMerge +%{_udevrulesdir}/85-regulatory.rules +%{_mandir}/man8/crda.8.gz +%{_mandir}/man8/regdbdump.8.gz + +%post +%{?udev_rules_update:%udev_rules_update} + +%changelog diff --git a/gcc6-fix-errors.patch b/gcc6-fix-errors.patch new file mode 100644 index 0000000..10d2d85 --- /dev/null +++ b/gcc6-fix-errors.patch @@ -0,0 +1,42 @@ +Index: crda-3.18/Makefile +=================================================================== +--- crda-3.18.orig/Makefile ++++ crda-3.18/Makefile +@@ -26,7 +26,7 @@ PUBKEY_DIR?=pubkeys + RUNTIME_PUBKEY_DIR?=/etc/wireless-regdb/pubkeys + + CFLAGS += -O2 -fpic +-CFLAGS += -std=gnu99 -Wall -Werror -pedantic ++CFLAGS += -std=gnu99 -Wall -Werror -Wno-unused-const-variable -pedantic + CFLAGS += -Wall -g + LDLIBREG += -lreg + LDLIBS += $(LDLIBREG) +@@ -135,23 +135,23 @@ install-libreg: + + crda: crda.o + $(NQ) ' LD ' $@ +- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) $(NLLIBS) ++ $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) $(NLLIBS) + + regdbdump: regdbdump.o + $(NQ) ' LD ' $@ +- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) ++ $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + intersect: intersect.o + $(NQ) ' LD ' $@ +- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) ++ $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + db2rd: db2rd.o + $(NQ) ' LD ' $@ +- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) ++ $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + optimize: optimize.o + $(NQ) ' LD ' $@ +- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) ++ $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + verify: $(REG_BIN) regdbdump + $(NQ) ' CHK $(REG_BIN)'