Using Debian, and "debian/rules binary-modules KSRC=/usr/src/kernel-headers-2.6.8-cpufreq-pentium-m/ KVERS=2.6.8-cpufreq-pentium-m" in /usr/src/modules/ipw2200:
for templ in ; do \
cp $templ `echo $templ | sed -e 's/_KVERS_/2.6.8-cpufreq-pentium-m/g'` ; \
done
for templ in `ls debian/*.modules.in` ; do \
test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \
sed -e 's/##KVERS##/2.6.8-cpufreq-pentium-m/g ;s/#KVERS#/2.6.8-cpufreq-pentium-m/g ; s/_KVERS_/2.6.8-cpufreq-pentium-m/g ; s/##KDREV##//g ; s/#KDREV#//g ; s/_KDREV_//g' < $templ > ${templ%.modules.in}; \
done
if ! `dpkg --compare-versions 2.6.8-cpufreq-pentium-m ge 2.6.4`; then \
echo "**************************************************"; \
echo "Can't build with a kernel version lower than 2.6.4"; \
echo "**************************************************"; \
exit 1; \
fi
export DH_OPTIONS='-pipw2200-modules-2.6.8-cpufreq-pentium-m'
sed s/_UPSTREAM_VERSION_/1.0.8/ < debian/config > debian/config.new
mv debian/config.new debian/config
dh_testdir
dh_testroot
dh_clean -k
# Build the module
/usr/bin/make -C driver KSRC=/usr/src/kernel-headers-2.6.8-cpufreq-pentium-m/ KVER=2.6.8-cpufreq-pentium-m IEEE80211_INC=/usr/include/ieee80211
make[1]: Entering directory `/usr/src/modules/ipw2200/driver'
mkdir -p /usr/src/modules/ipw2200/driver/tmp/.tmp_versions
cp /usr/include/ieee80211/*.mod /usr/src/modules/ipw2200/driver/tmp/.tmp_versions
/usr/bin/make -C /usr/src/kernel-headers-2.6.8-cpufreq-pentium-m/ M=/usr/src/modules/ipw2200/driver MODVERDIR=/usr/src/modules/ipw2200/driver/tmp/.tmp_versions CC="gcc-3.3 -I/usr/include/ieee80211" modules
make[2]: Entering directory `/usr/src/kernel-headers-2.6.8-cpufreq-pentium-m'
CC [M] /usr/src/modules/ipw2200/driver/ipw2200.o
In file included from /usr/src/modules/ipw2200/driver/ipw2200.c:33:
/usr/src/modules/ipw2200/driver/ipw2200.h:1131: error: variable or field `__iomem' declared void
/usr/src/modules/ipw2200/driver/ipw2200.h:1131: warning: no semicolon at end of struct or union
/usr/src/modules/ipw2200/driver/ipw2200.h:1131: error: parse error before '*' token
/usr/src/modules/ipw2200/driver/ipw2200.h:1248: error: `up' redeclared as different kind of symbol
include/asm/semaphore.h:197: error: previous declaration of `up'
/usr/src/modules/ipw2200/driver/ipw2200.h:1249: error: `down' redeclared as different kind of symbol
include/asm/semaphore.h:115: error: previous declaration of `down'
/usr/src/modules/ipw2200/driver/ipw2200.h:1303: error: parse error before '}' token
/usr/src/modules/ipw2200/driver/ipw2200.c:47: error: conflicting types for `cmdlog'
/usr/src/modules/ipw2200/driver/ipw2200.h:1273: error: previous declaration of `cmdlog'
/usr/src/modules/ipw2200/driver/ipw2200.c:49: error: conflicting types for `channel'
/usr/src/modules/ipw2200/driver/ipw2200.h:1192: error: previous declaration of `channel'
/usr/src/modules/ipw2200/driver/ipw2200.c:53: error: conflicting types for `associate'
/usr/src/modules/ipw2200/driver/ipw2200.h:1241: error: previous declaration of `associate'
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `__ipw_read8':
/usr/src/modules/ipw2200/driver/ipw2200.c:278: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `__ipw_read16':
/usr/src/modules/ipw2200/driver/ipw2200.c:287: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `__ipw_read32':
/usr/src/modules/ipw2200/driver/ipw2200.c:296: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_write_reg32':
/usr/src/modules/ipw2200/driver/ipw2200.c:322: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:323: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_write_reg8':
/usr/src/modules/ipw2200/driver/ipw2200.c:329: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:330: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_write_reg16':
/usr/src/modules/ipw2200/driver/ipw2200.c:336: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:337: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_read_reg8':
/usr/src/modules/ipw2200/driver/ipw2200.c:345: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:347: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_read_reg32':
/usr/src/modules/ipw2200/driver/ipw2200.c:357: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:358: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_read_indirect':
/usr/src/modules/ipw2200/driver/ipw2200.c:379: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:382: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:386: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:388: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:392: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `_ipw_write_indirect':
/usr/src/modules/ipw2200/driver/ipw2200.c:413: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:416: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:420: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:422: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:426: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:428: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_write_direct':
/usr/src/modules/ipw2200/driver/ipw2200.c:435: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_set_bit':
/usr/src/modules/ipw2200/driver/ipw2200.c:440: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_clear_bit':
/usr/src/modules/ipw2200/driver/ipw2200.c:445: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_enable_interrupts':
/usr/src/modules/ipw2200/driver/ipw2200.c:450: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:452: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:453: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_disable_interrupts':
/usr/src/modules/ipw2200/driver/ipw2200.c:458: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:460: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:461: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_is_init':
/usr/src/modules/ipw2200/driver/ipw2200.c:535: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_get_ordinal':
/usr/src/modules/ipw2200/driver/ipw2200.c:550: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:550: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:550: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:568: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:569: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:581: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:586: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:602: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:615: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:633: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:639: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:644: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_init_ordinals':
/usr/src/modules/ipw2200/driver/ipw2200.c:682: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:683: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:683: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:685: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:685: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:688: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:689: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:689: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:691: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:691: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:694: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:695: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:695: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:696: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:698: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:698: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_led_link_on':
/usr/src/modules/ipw2200/driver/ipw2200.c:735: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:735: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:738: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:740: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:741: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:744: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:751: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:754: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:755: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:756: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:760: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_bg_led_link_on':
/usr/src/modules/ipw2200/driver/ipw2200.c:766: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:766: error: called object is not a function
/usr/src/modules/ipw2200/driver/ipw2200.c:768: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:768: error: called object is not a function
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_led_link_off':
/usr/src/modules/ipw2200/driver/ipw2200.c:778: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:778: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:781: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:783: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:785: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:793: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:797: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:798: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:799: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:799: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:804: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_bg_led_link_off':
/usr/src/modules/ipw2200/driver/ipw2200.c:810: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:810: error: called object is not a function
/usr/src/modules/ipw2200/driver/ipw2200.c:812: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:812: error: called object is not a function
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `__ipw_led_activity_on':
/usr/src/modules/ipw2200/driver/ipw2200.c:819: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:822: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:6139: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11733: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11737: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11737: warning: left-hand operand of comma expression has no effect
/usr/src/modules/ipw2200/driver/ipw2200.c:11737: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11743: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11744: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11745: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11749: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11753: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_pci_suspend':
/usr/src/modules/ipw2200/driver/ipw2200.c:11765: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11776: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c: In function `ipw_pci_resume':
/usr/src/modules/ipw2200/driver/ipw2200.c:11794: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11806: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11826: error: dereferencing pointer to incomplete type
/usr/src/modules/ipw2200/driver/ipw2200.c:11826: error: dereferencing pointer to incomplete type
make[3]: *** [/usr/src/modules/ipw2200/driver/ipw2200.o] Error 1
make[2]: *** [_module_/usr/src/modules/ipw2200/driver] Error 2
make[2]: Leaving directory `/usr/src/kernel-headers-2.6.8-cpufreq-pentium-m'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/modules/ipw2200/driver'
make: *** [binary-modules] Error 2