/[packages]/cauldron/ndiswrapper/current/SPECS/ndiswrapper.spec
ViewVC logotype

Contents of /cauldron/ndiswrapper/current/SPECS/ndiswrapper.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1914807 - (show annotations) (download)
Fri Dec 2 20:41:54 2022 UTC (2 years, 7 months ago) by danf
File size: 4211 byte(s)
SILENT: Switch SourceForge URLs to https:
1 %define build_dkms 0
2 %{?_with_dkms:%define build_dkms 1}
3 %{?_without_dkms:%define build_dkms 0}
4
5
6 Name: ndiswrapper
7 Version: 1.63
8 Release: %mkrel 3
9 Summary: NdisWrapper binary loader utility
10 License: GPLv2
11 Group: System/Kernel and hardware
12 URL: https://ndiswrapper.sourceforge.net/
13 Source0: https://prdownloads.sourceforge.net/ndiswrapper/%{name}-%{version}.tar.gz
14 Source1: %{name}.bash-completion
15 Source2: %{name}.pm-utils
16 Patch0: ndiswrapper-1.59-cflags.patch
17 Requires: kernel
18 %if !%build_dkms
19 Obsoletes: dkms-%{name} < %{version}-%{release}
20 %endif
21
22 %description
23 Ndiswrapper implements the Windows kernel APIs within the Linux kernel. This
24 allows you to use a Windows driver for a wireless network card. The driver
25 runs natively, as though it is in Windows, without binary emulation. This is
26 not ideal, but is useful when a vendor does not provide Linux drivers and no
27 free and open driver exists.
28
29 With ndiswrapper, most miniPCI (builtin), PCI, PCMCIA (Cardbus only) or USB
30 wireless network adapters work in Linux. Although ndiswrapper is intended for
31 wireless network cards, other devices are known to work, such as Ethernet
32 cards, USB to serial port device, and home phone network devices.
33
34 Note that ndiswrapper is known to cause occasional computer lockups.
35
36 %if %build_dkms
37 %package -n dkms-%{name}
38 Summary: DKMS ndiswrapper module: USUALLY NOT NEEDED
39 License: GPLv2
40 BuildArch: noarch
41 Group: System/Kernel and hardware
42 Requires(post,preun): dkms
43 Requires: %{name} = %{version}
44
45 %description -n dkms-%{name}
46 ** YOU ALMOST CERTAINLY SHOULD NOT INSTALL THIS PACKAGE **. It is only
47 useful if you are using a kernel with no ndiswrapper module of its own.
48 All official %{_vendor} kernel packages, and all kernel-tmb packages,
49 have their own ndiswrapper modules. If you are using one of these
50 kernels, DO NOT install this package.
51
52 DKMS package for %{name} kernel module.
53 %endif
54
55 %prep
56 %setup -q
57 %autopatch -p1
58
59 %build
60 pushd utils
61 CFLAGS="%{optflags}" \
62 %make_build
63 popd
64
65 %install
66 install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
67 install -m755 utils/loadndisdriver -D $RPM_BUILD_ROOT/sbin/loadndisdriver
68 install -m755 utils/ndiswrapper -D $RPM_BUILD_ROOT%{_sbindir}/ndiswrapper
69 install -m755 utils/ndiswrapper-buginfo -D $RPM_BUILD_ROOT%{_sbindir}/ndiswrapper-buginfo
70
71 install -d $RPM_BUILD_ROOT%{_mandir}/man8
72 install -m0644 ndiswrapper.8 $RPM_BUILD_ROOT%{_mandir}/man8/
73
74 %if %build_dkms
75 mkdir -p %{buildroot}/usr/src/%{name}-%{version}-%{release}
76 cp -a driver/* %{buildroot}/usr/src/%{name}-%{version}-%{release}
77 cat > %{buildroot}/usr/src/%{name}-%{version}-%{release}/dkms.conf <<EOF
78
79 PACKAGE_VERSION="%{version}-%{release}"
80
81 # Items below here should not have to change with each driver version
82 PACKAGE_NAME="%{name}"
83 MAKE[0]="make KVERS=\${kernelver} -C \${dkms_tree}/\${PACKAGE_NAME}/\${PACKAGE_VERSION}/build"
84 CLEAN="make -C \${kernel_source_dir} SUBDIRS=\${dkms_tree}/\${PACKAGE_NAME}/\${PACKAGE_VERSION}/build clean"
85
86 BUILT_MODULE_NAME[0]="\$PACKAGE_NAME"
87 DEST_MODULE_LOCATION[0]="/kernel/3rdparty/%{name}"
88 MODULES_CONF_ALIAS_TYPE[0]="eth"
89
90 REMAKE_INITRD="no"
91 AUTOINSTALL=yes
92 EOF
93 %endif
94
95 install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
96 install -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/ndiswrapper
97 install -D -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/pm/config.d/%{name}
98
99 %post
100 echo -e "please download binary driver (look at https://ndiswrapper.sourceforge.net/)\nuse ndiswrapper -i <inffile.inf> as root to install driver"
101
102 %if %build_dkms
103 %post -n dkms-%{name}
104 dkms add -m %{name} -v %{version}-%{release} --rpm_safe_upgrade &&
105 dkms build -m %{name} -v %{version}-%{release} --rpm_safe_upgrade &&
106 dkms install -m %{name} -v %{version}-%{release} --rpm_safe_upgrade --force
107 exit 0
108
109 %preun -n dkms-%{name}
110 dkms remove -m %{name} -v %{version}-%{release} --rpm_safe_upgrade --all
111 exit 0
112 %endif
113
114 %files
115 %doc AUTHORS README ChangeLog INSTALL
116 /sbin/loadndisdriver
117 %{_sbindir}/ndiswrapper
118 %{_sbindir}/ndiswrapper-buginfo
119 %{_sysconfdir}/%{name}
120 %config(noreplace)%{_sysconfdir}/bash_completion.d/%{name}
121 %{_sysconfdir}/pm/config.d/%{name}
122 %{_mandir}/man8/*
123
124 %if %build_dkms
125 %files -n dkms-%{name}
126 /usr/src/%{name}-%{version}-%{release}
127 %endif

  ViewVC Help
Powered by ViewVC 1.1.30