Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 182199 - net-wireless/madwifi-ng-0.9.3.1: Other applications, like wpa_supplicant, don't compile with 0.9.3.1
Summary: net-wireless/madwifi-ng-0.9.3.1: Other applications, like wpa_supplicant, don...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Roy Marples (RETIRED)
URL: http://madwifi.org/ticket/1392
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-06-16 07:19 UTC by Alexander Skwar
Modified: 2007-06-19 16:18 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,52.74 KB, text/plain)
2007-06-16 07:20 UTC, Alexander Skwar
Details
CONTENTS file of madwifi-ng-tools (CONTENTS,3.09 KB, text/plain)
2007-06-18 08:02 UTC, Alexander Skwar
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Skwar 2007-06-16 07:19:43 UTC
I'm trying to compile wpa_supplicant with these flags:

[ebuild     U ] net-wireless/wpa_supplicant-0.6.0 [0.5.7] USE="dbus gnutls -gsm madwifi qt3 qt4 readline ssl" 0 kB 


Fails:

i686-pc-linux-gnu-gcc -O2 -march=pentium-m -pipe -fomit-frame-pointer -I. -I../src -I../src/crypto -I../src/utils -I../src/common -I../src/rsn_supp -I/usr/include/madwifi -DCONFIG_BACKEND_FILE -DCONFIG_DRIVER_HOSTAP -DCONFIG_DRIVER_WEXT -DCONFIG_DRIVER_PRISM54 -DCONFIG_DRIVER_MADWIFI -DCONFIG_DRIVER_ATMEL -DCONFIG_DRIVER_NDISWRAPPER -DCONFIG_DRIVER_IPW -DCONFIG_DRIVER_WIRED -DEAP_TLS -DEAP_PEAP -DEAP_TTLS -DEAP_MD5 -DEAP_MSCHAPv2 -DEAP_GTC -DEAP_OTP -DEAP_LEAP -DEAP_PSK -DEAP_TLV -DEAP_PAX -DIEEE8021X_EAPOL -DEAP_TLS_FUNCS -DEAP_TLS_OPENSSL -DPKCS12_FUNCS -DCONFIG_SMARTCARD -DINTERNAL_SHA256 -DCONFIG_WIRELESS_EXTENSION -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -DCONFIG_CTRL_IFACE_DBUS -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include   -DCONFIG_READLINE -DCONFIG_PEERKEY   -c -o ../src/drivers/driver_madwifi.o ../src/drivers/driver_madwifi.c
../src/drivers/driver_madwifi.c:26:28: error: include/compat.h: No such file or directory
../src/drivers/driver_madwifi.c:27:32: error: net80211/ieee80211.h: No such file or directory
../src/drivers/driver_madwifi.c:33:39: error: net80211/ieee80211_crypto.h: No such file or directory
../src/drivers/driver_madwifi.c:34:38: error: net80211/ieee80211_ioctl.h: No such file or directory
../src/drivers/driver_madwifi.c: In function 'set80211priv':
../src/drivers/driver_madwifi.c:110: error: 'IEEE80211_IOCTL_SETPARAM' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:110: error: (Each undeclared identifier is reported only once
../src/drivers/driver_madwifi.c:110: error: for each function it appears in.)
../src/drivers/driver_madwifi.c:111: error: 'IEEE80211_IOCTL_CHANLIST' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'set80211param':
../src/drivers/driver_madwifi.c:154: error: 'IEEE80211_IOCTL_SETPARAM' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_set_wpa_ie':
../src/drivers/driver_madwifi.c:174: error: 'IEEE80211_IOCTL_SETOPTIE' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_del_key':
../src/drivers/driver_madwifi.c:185: error: storage size of 'wk' isn't known
../src/drivers/driver_madwifi.c:191: error: 'IEEE80211_ADDR_LEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:193: error: 'IEEE80211_IOCTL_DELKEY' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_set_key':
../src/drivers/driver_madwifi.c:203: error: storage size of 'wk' isn't known
../src/drivers/driver_madwifi.c:225: error: 'IEEE80211_CIPHER_WEP' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:229: error: 'IEEE80211_CIPHER_TKIP' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:233: error: 'IEEE80211_CIPHER_AES_CCM' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:258: error: 'IEEE80211_KEY_RECV' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:261: error: 'IEEE80211_KEY_GROUP' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:263: error: 'IEEE80211_KEY_XMIT' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:263: error: 'IEEE80211_KEY_DEFAULT' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:264: error: 'IEEE80211_ADDR_LEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:284: error: 'IEEE80211_IOCTL_SETKEY' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_set_countermeasures':
../src/drivers/driver_madwifi.c:292: error: 'IEEE80211_PARAM_COUNTERMEASURES' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_set_drop_unencrypted':
../src/drivers/driver_madwifi.c:301: error: 'IEEE80211_PARAM_DROPUNENCRYPTED' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_deauthenticate':
../src/drivers/driver_madwifi.c:308: error: storage size of 'mlme' isn't known
../src/drivers/driver_madwifi.c:311: error: 'IEEE80211_MLME_DEAUTH' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:313: error: 'IEEE80211_ADDR_LEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:314: error: 'IEEE80211_IOCTL_SETMLME' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_disassociate':
../src/drivers/driver_madwifi.c:321: error: storage size of 'mlme' isn't known
../src/drivers/driver_madwifi.c:324: error: 'IEEE80211_MLME_DISASSOC' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:326: error: 'IEEE80211_ADDR_LEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:327: error: 'IEEE80211_IOCTL_SETMLME' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_associate':
../src/drivers/driver_madwifi.c:335: error: storage size of 'mlme' isn't known
../src/drivers/driver_madwifi.c:358: error: 'IEEE80211_PARAM_PRIVACY' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:362: error: 'IEEE80211_PARAM_WPA' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:371: error: 'IEEE80211_PARAM_ROAMING' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:384: error: 'IEEE80211_MLME_ASSOC' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:385: error: 'IEEE80211_ADDR_LEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:386: error: 'IEEE80211_IOCTL_SETMLME' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_set_auth_alg':
../src/drivers/driver_madwifi.c:405: error: 'IEEE80211_AUTH_AUTO' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:407: error: 'IEEE80211_AUTH_SHARED' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:409: error: 'IEEE80211_AUTH_OPEN' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:411: error: 'IEEE80211_PARAM_AUTHMODE' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_init':
../src/drivers/driver_madwifi.c:495: error: 'IEEE80211_PARAM_ROAMING' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:501: error: 'IEEE80211_PARAM_WPA' undeclared (first use in this function)
../src/drivers/driver_madwifi.c: In function 'wpa_driver_madwifi_deinit':
../src/drivers/driver_madwifi.c:527: error: 'IEEE80211_PARAM_ROAMING' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:531: error: 'IEEE80211_PARAM_PRIVACY' undeclared (first use in this function)
../src/drivers/driver_madwifi.c:535: error: 'IEEE80211_PARAM_WPA' undeclared (first use in this function)
make: *** [../src/drivers/driver_madwifi.o] Error 1

!!! ERROR: net-wireless/wpa_supplicant-0.6.0 failed.
Call stack:
  ebuild.sh, line 1629:   Called dyn_compile
  ebuild.sh, line 975:   Called qa_call 'src_compile'
  ebuild.sh, line 44:   Called src_compile
  wpa_supplicant-0.6.0.ebuild, line 145:   Called die

!!! emake failed
!!! If you need support, post the topmost build error, and the call stack if relevant.
!!! A complete build log is located at '/Gentoo/Portage/build/portage/net-wireless/wpa_supplicant-0.6.0/temp/build.log'.
Comment 1 Alexander Skwar 2007-06-16 07:20:16 UTC
Created attachment 122208 [details]
build.log

alexander@blattli ~ $ emerge --info
Portage 2.1.3_rc3 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.5-r3, 2.6.21-suspend2-r6.neu.001 i686)
=================================================================
System uname: 2.6.21-suspend2-r6.neu.001 i686 Intel(R) Celeron(R) M processor 1.50GHz
Gentoo Base System release 1.12.10
Timestamp of tree: Sat, 16 Jun 2007 05:50:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r7
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer"
DISTDIR="/Gentoo/Portage/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical"
FEATURES="ccache collision-protect distlocks metadata-transfer sandbox sfperms strict unmerge-orphans"
GENTOO_MIRRORS="http://mirror.switch.ch/ftp/mirror/gentoo/ http://gentoo.mirror.solnet.ch http://distfiles.gentoo.org/"
LANG="de_DE.UTF-8"
LINGUAS="de"
PKGDIR="/Gentoo/Portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/Gentoo/Portage/build"
PORTDIR="/Gentoo/Portage/tree"
PORTDIR_OVERLAY="/Gentoo/Portage/local-tree/misc"
SYNC="rsync://rsync.ch.gentoo.org/gentoo-portage"
USE="X acpi alsa bash-completion berkdb bitmap-fonts cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread emboss encode esd evo fam firefox fortran gdbm gif gnome gstreamer gtk hal iconv isdnlog jpeg kde kdeenablefinal kdehiddenvisibility libedit libg++ libnotify mad midi mikmod mmx mp3 mpeg mudflap ncurses nfs nls nptl nptlonly offensive ogg opengl openmp pcre pdf perl png pppd python qt3 qt3support qt4 quicktime readline reflection samba sdl session spell spl ssl svg tcpd tiff truetype truetype-fonts type1-fonts unicode vim-syntax vorbis wifi win32codecs x86 xml xorg xv zlib" ALSA_CARDS="loopback usb-audio via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="fbdev vesa vga via"
Unset:  CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Alexander Skwar 2007-06-16 15:27:52 UTC
This seems to be a problem of madwifi-ng-0.9.3.1. With this version of madwifi-ng, I cannot compile wpa_supplicant with USE=madwifi.

When I downgrade madwifi-ng to madwifi-ng-0.9.3-r3, I am able to compile wpa_supplicant.
Comment 3 Alexander Skwar 2007-06-16 15:34:03 UTC
wpa_supplicant 0.5.7 also does not compile with madwifi-ng-0.9.3.1.

So it rather seems to be an issue with the 0.9.3.1 release of madwifi-ng, and not so much of wpa_supplicant.

Comment 4 Alexander Skwar 2007-06-16 21:47:50 UTC
I informed upstream as well.

- madiwifi-ng -> http://madwifi.org/ticket/1392
- wpa_supplicant -> http://article.gmane.org/gmane.linux.drivers.hostap/16124
Comment 5 Alexander Skwar 2007-06-18 08:02:11 UTC
Created attachment 122394 [details]
CONTENTS file of madwifi-ng-tools

*VERY* strange...

On a different system, which does NOT use a madwifi controlled WIFI card, I installed madwifi-ng-0.9.3.1 incl. -tools package. madwifi was NOT installed prior to this. Then I installed USE=madwifi wpa_supplicant.

Result: It installed!

Strange.

Then I downgraded to madwifi-ng-0.9.3-r3, recompiled wpa_supplicant, upgraded madwifi-ng to 0.9.3.1 and tried to recompile wpa_supplicant again.

Result: Fails, with the error message shown in the original report.

So it seems to me, that compilation of wpa_supplicant ONLY then fails, if madwifi-ng is upgraded from 0.9.3-r3 to 0.9.3.1.

As you can see in the attached CONTENTS file, the include/compat.h file does exist (at least it's in the CONTENTS file).

But see this now:

--($:~)-- LANG=C ls -la /usr/include/madwifi/include/compat.h
ls: cannot access /usr/include/madwifi/include/compat.h: No such file or directory


Why does the file NOT exist? 

Something's broken in the upgrade proces, it seems. It seems, as if, during the upgrade process, this file gets removed. How can that be?
Comment 6 Steev Klimaszewski (RETIRED) gentoo-dev 2007-06-18 13:34:27 UTC
Because madwifi-ng-tools (I think? - Genstef did the actual bumpage work) now installs the headers, not madwifi-ng itself.  Re-installing tools after upgrading should cause it to work.
Comment 7 Alexander Skwar 2007-06-18 13:57:23 UTC
if I do the following:

emerge madwifi-ng
emerge madwifi-nt-tools

then everything is right. However, that does not (necessarily) happen, when you upgrade from 0.9.3-r3 to 0.9.3.1.

Could you maybe add a blocker to 0.9.3.1 against <0.9.3.1, so that users will de-install madwifi-ng first? This way, users will not run into the problem, that all of a sudden files are missing.

As it is right now, when users upgrade madwifi-ng (incl. -tools) from 0.9.3-r3 to 0.9.3.1, they'll find themselves in a situation, that files are missing which should be there (according to the CONTENTS file).
Comment 8 Gordon Malm (RETIRED) gentoo-dev 2007-06-18 16:51:16 UTC
The problem is the wpa_supplicant/hostapd portion of bug #179348 has not been completed.  Otherwise, it would've pulled in madwifi-ng-tools automatically upon upgrading to madwifi-ng 0.9.3.1.
Comment 9 Alexander Skwar 2007-06-18 17:11:37 UTC
No. wpa_supplicant/hostapd has nothing to do with that. It's only an application, which is using madwifi-ng and the installed headers.

Do the following, please:

0) emerge -C madwifi-ng{-tools,}
1) emerge =madwifi-ng-0.9.3-r3
2) emerge =madwifi-ng-0.9.3.1
3) Check if all the files from /var/db/pkg/net-wireless/madwifi-ng-tools-0.9.3.1/CONTENTS exist.

Expected result: At least /usr/include/madwifi/include/compat.h is missing.

Now do:

0) emerge -C madwifi-ng{-tools,}
1) emerge =madwifi-ng-0.9.3-r3
2) emerge -C madwifi-ng{-tools,}
3) emerge =madwifi-ng-0.9.3.1
4) Check if all the files from /var/db/pkg/net-wireless/madwifi-ng-tools-0.9.3.1/CONTENTS exist.

Expected result: Yes, everything is there.
Comment 10 Gordon Malm (RETIRED) gentoo-dev 2007-06-19 02:53:04 UTC
Sorry, I should read closer.  I thought the case was you had no madwifi-ng-tools.  The committer in the same bug I referenced decided not to put in the blocker.  

So using your first scenerio what you are saying is happening is:

step 1. madwifi-ng-0.9.3-r3 installs headers
step 2. madwifi-ng-tools-0.9.3 is upgraded to madwifi-ng-tools-0.9.3.1 and overwrites the same headers installed by madwifi-ng-0.9.3-r3 (headers were moved from madwifi-ng to madwifi-ng-tools in this release)
step 3. madwifi-ng-0.9.3-r3 is upgraded to madwifi-ng-0.9.3.1 and during the file removal phase of the emerge, portage removes the headers it thinks belong to madwifi-ng-0.9.3-r3.

What I don't understand is how you are able to do step 2, merge madwifi-ng-tools-0.9.3.1 and overwrite headers installed by madwifi-ng-0.9.3-r3 when you have FEATURES="collision-protect" turned on.

Also, on my machines, portage does not remove a package's files if the mtime does not match that listed in the CONTENTS file.  This would be the case for madwifi-ng-0.9.3-r3 in step 3 and thus the header files are not removed.

It is as if your portage is ignoring FEATURES="collision-protect" during step 2 and honoring it during step 3.
Comment 11 Gordon Malm (RETIRED) gentoo-dev 2007-06-19 03:06:23 UTC
Er, my to clarify the last paragraph of my previous post.

-It seems FEATURES="collision-protect" is being ignored in step 2.
-The headers should not normally be removed by portage in step 3, but for some reason they are on your machine.  Maybe or maybe not FEATURES="collision-protect" related?
Comment 12 Gordon Malm (RETIRED) gentoo-dev 2007-06-19 03:22:02 UTC
aH dErrr, ok...

My mistake, FEATURES="collision-protect" doesn't stop madwifi-ng-tools-0.9.3.1 from merging, it just keeps madwifi-ng-tools-0.9.3.1 from overwriting madwifi-ng-0.9.3-r3's header files.

So the installed headers never get touched and thus still belong to madwifi-ng-0.9.3-r3 and not madwifi-ng-tools-0.9.3.1.  When madwifi-ng-0.9.3-r3 is upgraded to madwifi-ng-0.9.3.1 portage rightfully removes the header files that belong to madwifi-ng-0.9.3-r3 and are not in madwifi-ng-0.9.3.1.
Comment 13 Stefan Schweizer (RETIRED) gentoo-dev 2007-06-19 08:13:27 UTC
I fixed the depends in wpa and hostapd
Comment 14 Alexander Skwar 2007-06-19 08:39:27 UTC
(In reply to comment #13)
> I fixed the depends in wpa and hostapd
> 

Fine, thanks. But that's not what this bug is about :) AFAICT, this bug is about madwifi-ng{,-tools}.

Because of this: Reopening.

(In reply to comment #12)
> aH dErrr, ok...
> 
> My mistake, FEATURES="collision-protect" doesn't stop madwifi-ng-tools-0.9.3.1
> from merging, it just keeps madwifi-ng-tools-0.9.3.1 from overwriting
> madwifi-ng-0.9.3-r3's header files.

Öhm... First of, it seems that I had collision-protect disabled yesterday, when I did those tests.

Furthermore, on my system, when I enable collision-protect, emerge IS stopped!

ecompressdir: bzip2 -9 usr/share/man
strip: i686-pc-linux-gnu-strip --strip-unneeded
   usr/bin/athkey
   usr/bin/80211debug
   usr/bin/athctrl
   usr/bin/80211stats
   usr/bin/athchans
   usr/bin/athdebug
   usr/bin/athstats
   sbin/wlanconfig
* checking 35 files for package collisions
existing file /usr/include/madwifi/net80211/if_athproto.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_linux.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_crypto.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_monitor.h is not owned by this package
existing file /usr/include/madwifi/net80211/if_ethersubr.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_radiotap.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_var.h is not owned by this package
existing file /usr/include/madwifi/net80211/if_llc.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_ioctl.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_power.h is not owned by this package
existing file /usr/include/madwifi/net80211/if_media.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_proto.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_node.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_rate.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211_scan.h is not owned by this package
existing file /usr/include/madwifi/net80211/version.h is not owned by this package
existing file /usr/include/madwifi/net80211/ieee80211.h is not owned by this package
existing file /usr/include/madwifi/net80211/_ieee80211.h is not owned by this package
existing file /usr/include/madwifi/include/compat.h is not owned by this package
* This package is blocked because it wants to overwrite
* files belonging to other packages (see messages above).
* If you have no clue what this is all about report it 
* as a bug for this package on http://bugs.gentoo.org

package net-wireless/madwifi-ng-tools-0.9.3.1 NOT merged


Searching all installed packages for file collisions...
Press Ctrl-C to Stop

 * net-wireless/madwifi-ng-0.9.3-r3:

     '/usr/include/madwifi/net80211/if_athproto.h'
     '/usr/include/madwifi/net80211/ieee80211_linux.h'
     '/usr/include/madwifi/net80211/ieee80211_crypto.h'
     '/usr/include/madwifi/net80211/ieee80211_monitor.h'
     '/usr/include/madwifi/net80211/if_ethersubr.h'
     '/usr/include/madwifi/net80211/ieee80211_radiotap.h'
     '/usr/include/madwifi/net80211/ieee80211_var.h'
     '/usr/include/madwifi/net80211/if_llc.h'
     '/usr/include/madwifi/net80211/ieee80211_ioctl.h'
     '/usr/include/madwifi/net80211/ieee80211_power.h'
     '/usr/include/madwifi/net80211/if_media.h'
     '/usr/include/madwifi/net80211/ieee80211_proto.h'
     '/usr/include/madwifi/net80211/ieee80211_node.h'
     '/usr/include/madwifi/net80211/ieee80211_rate.h'
     '/usr/include/madwifi/net80211/ieee80211_scan.h'
     '/usr/include/madwifi/net80211/version.h'
     '/usr/include/madwifi/net80211/ieee80211.h'
     '/usr/include/madwifi/net80211/_ieee80211.h'
     '/usr/include/madwifi/include/compat.h'

--(askwar@winnb000488)-(32/pts/2)-(10:33:40/2007-06-19)--
--($:~)-- echo $?
1

> So the installed headers never get touched and thus still belong to
> madwifi-ng-0.9.3-r3 and not madwifi-ng-tools-0.9.3.1.

Yep.

> When madwifi-ng-0.9.3-r3
> is upgraded to madwifi-ng-0.9.3.1 portage rightfully removes the header files
> that belong to madwifi-ng-0.9.3-r3 and are not in madwifi-ng-0.9.3.1.

Okay, yes.

When you re-run the test with FEATURES=-collision-protect, you'll find, that things finally are so, as I wrote in my comments :) 

How about adding a blocker to madwifi-ng-tools-0.9.3.1 against <madwifi-ng-0.9.3.1, so that people will first unmerge madwifi-ng, before they try to upgrade madwifi-ng-tools from 0.9.3-r3 to 0.9.3.1? If things are left as they are right now, people might run into this problem - especially those people, who have FEATURES=-collision-protect set.
Comment 15 Stefan Schweizer (RETIRED) gentoo-dev 2007-06-19 08:45:14 UTC
quoting from bug 179348

"A blocker is a bad thing because most users do not know how to correctly handle
it. Besides it braks automated updates.

Maybe we can remove the conflicting files in preinst?"

feel free to give me a patch for that.
Comment 16 Alexander Skwar 2007-06-19 08:48:28 UTC
(In reply to comment #15)
> quoting from bug 179348
> 
> "A blocker is a bad thing because most users do not know how to correctly
> handle
> it. Besides it braks automated updates.
> 
> Maybe we can remove the conflicting files in preinst?"

Hm, difficult situation. Without a blocker and with FEATURES=-collision-protect, people might run into the same problem that I ran into, don't you think so?

> feel free to give me a patch for that.

For what? For removing files? Do you think that this would be the right way to go (I mean removing the files)? Is something like this done in other packages as well?
Comment 17 Stefan Schweizer (RETIRED) gentoo-dev 2007-06-19 08:59:52 UTC
the deps are right now. So no one can run into problems.

You only have the ugly collision protect error and if you are using collision protect you should be able to solve it like you would be able to solve a blocker :)

marking this as fixed since you dont seem to want to contribute the patch.
Comment 18 Alexander Skwar 2007-06-19 09:06:22 UTC
(In reply to comment #17)
> the deps are right now. So no one can run into problems.
> 
> You only have the ugly collision protect error and if you are using collision
> protect you should be able to solve it like you would be able to solve a
> blocker :)

Is FEATURES=collision-protect (ie. enabled collision-protect) an out-of-the-box setting now? Or is c-p disabled by default? If it's disabled, people will have problems. If it's enabled, it just smacks of not taking good care to let people run into known issues.

> marking this as fixed since you dont seem to want to contribute the patch.

Wrong. It's not that I do not want to contribute a patch. Absolutely not. I just don't know yet what to contribute. As your conclusion is completely off, I'd like to reopen (but refrain from doing so, at least for now).

BTW: IMO the right way to fix this issue would be to add a blocker. As far as automatic upgrade goes: Well, doesn't work anyway (if it would work, this bug would not exist). Because of this, I don't think that "automatic upgrade" can be used as a justification.

Comment 19 Gordon Malm (RETIRED) gentoo-dev 2007-06-19 16:18:01 UTC
Taking the merge order from your problem scenerio:

madwifi-ng-0.9.3-r3
madwifi-ng-tools-0.9.3.1
madwifi-ng-0.9.3.1

madwifi-ng-tools-0.9.3.1 will overwrite madwifi-ng-0.9.3-r3's headers.  During the removal phase, when madwifi-ng-0.9.3-r3 is upgraded to madwifi-ng-0.9.3.1 portage should not remove the headers installed by madwifi-ng-tools-0.9.3.1 because the headers' mtimes have changed and don't match the CONTENTS those in file.  There is no problem.

No one else has been having your problem that I can see and I cannot recreate your problem with stable portage 2.1.2.7.  Perhaps there is an issue with portage 2.1.3_rc3 that you are using?

In your case:

madwifi-ng-0.9.3-r3's headers are not being overwritten by madwifi-ng-tools-0.9.3.1 and thus still belong to madwifi-ng-0.9.3-r3.  When madwifi-ng-0.9.3-r3 is removed, the headers' still belonging to it, are being rightfully removed as well.

OR

Portage is allowing madwifi-ng-tools-0.9.3.1 to overwrite the headers installed by madwifi-ng-0.9.3-r3.  However, portage is removing the headers installed by madwifi-ng-tools-0.9.3.1 when madwifi-ng-0.9.3-r3 is removed because it is not checking the installed headers' mtime like it should be.