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

  ViewVC Help
Powered by ViewVC 1.1.30