Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 98572 - wxWidgets header <wx/wx.h> not including <wx/socket.h>
Summary: wxWidgets header <wx/wx.h> not including <wx/socket.h>
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo wxWidgets project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-07-10 09:32 UTC by Tommy McDaniel
Modified: 2006-04-18 16:26 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tommy McDaniel 2005-07-10 09:32:06 UTC
The wxWidgets header file <wx/wx.h> is supposed to include all wxWidgets header  
files, so that one doesn't have to include them each manually. However, after  
receiving some compilation errors, I behold that my /usr/include/wx/wx.h  
doesn't include <wx/socket.h>. This strikes me as something that might very  
well be a bug in wxWidgets itself (or maybe even a feature) and not Gentoo's 
installation of it, but I don't know, and I remember once seeing a request to 
file bugs with Gentoo first (and the developers here would send the bug 
upstream if the problem is with the package itself).  

Reproducible: Always
Steps to Reproduce:
1. Install wxWidgets through Portage. 
2. Take a look at /usr/include/wx/wx.h, or alternatively, compile a program 
using a class like wxIPV4address while only including <wx/wx.h>. 
3. Behold that <wx/wx.h> doesn't include <wx/socket.h>. 
Actual Results:  
I saw that /usr/include/wx/wx.h doesn't include <wx/socket.h>, after getting 
compilation errors when using classes from <wx/socket.h> but only including 
<wx/wx.h>. 

Expected Results:  
Included <wx/socket.h> automatically. 

Portage 2.0.51.22-r1 (default-linux/amd64/2005.0, gcc-3.4.3, 
glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r11 x86_64) 
================================================================= 
System uname: 2.6.11-gentoo-r11 x86_64 AMD Opteron(tm) Processor 246 
Gentoo Base System version 1.6.12 
dev-lang/python:     2.3.5 
sys-apps/sandbox:    1.2.9 
sys-devel/autoconf:  2.13, 2.59-r6 
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 
sys-devel/binutils:  2.15.92.0.2-r10 
sys-devel/libtool:   1.5.18-r1 
virtual/os-headers:  2.6.11-r2 
ACCEPT_KEYWORDS="amd64" 
AUTOCLEAN="yes" 
CBUILD="x86_64-pc-linux-gnu" 
CFLAGS="-march=opteron -O3 -pipe" 
CHOST="x86_64-pc-linux-gnu" 
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" 
CXXFLAGS="-march=opteron -O3 -pipe" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoconfig distlocks sandbox sfperms strict" 
GENTOO_MIRRORS="http://distfiles.gentoo.org 
http://distro.ibiblio.org/pub/Linux/distributions/gentoo" 
LANG="en_US.utf8" 
LC_ALL="en_US.utf8" 
MAKEOPTS="-j3" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
SYNC="rsync://rsync.gentoo.org/gentoo-portage" 
USE="amd64 X Xaw3d a52 aac aalib accessibility acl acpi adns aim alsa apache2 
arts audiofile avi bash-completion bcmath berkdb bidi bitmap-fonts bluetooth 
bmp bonobo bzlib calendar canna cdb cdparanoia cdr chasen cjk crypt cscope 
ctype cups curl curlwrappers db2 dba dbase dbm dbx dedicated dga dio directfb 
doc dv dvb dvd dvdr dvdread eds emacs emacs-w3 emul-linux-x86 encode esd 
ethereal evo examples exif expat fam fastcgi fbcon ffmpeg flac flash flatfile 
font-server foomaticdb fortran freetds freewnn ftp gb gcj gd gdbm geoip ggi gif 
ginac glut gmp gnome gnustep gnutls gphoto2 gpm gps gstreamer gtk gtk2 gtkhtml 
guile hal hardened hardenedphp howl hyperwave-api iconv icq imagemagick imap 
imlib inifile innodb interbase iodbc ipv6 jabber jack javascript joystick jp2 
jpeg kde kerberos krb4 ladcca lcms ldap leim libcaca libg++ libgda libwww lirc 
lm_sensors lzw lzw-tiff m17n-lib mad maildir mailwrapper matroska mbox mcal 
mcve memlimit mhash migemo mikmod milter mime ming mmap mng mnogosearch motif 
mozilla mp3 mpeg mpi msession msql mssql mule mysql mysqli nas ncurses neXt 
netcdf nis nls nocd nptl oci8 odbc offensive ofx ogg openal opengl oracle 
oracle7 osc oscar oss ovrimos pam pcntl pcre pda pdflib perl php plotutils png 
portaudio posix postgres ppds prelude python qdbm qt quicktime readline recode 
ruby samba sapdb sasl scanner sdl session sharedext sharedmem shorten simplexml 
skey slang smartcard sndfile snmp soap sockets socks5 source sox speex spell 
spl sqlite ssl svg symlink sysvipc szip tcltk tcpd tetex theora threads tidy 
tiff tokenizer truetype truetype-fonts type1-fonts unicode usb userlocales v4l 
vcd vhosts videos vorbis wddx wifi wmf wxwindows xface xine xml xml2 xmlrpc 
xmms xosd xpm xprint xrandr xsl xv xvid yahoo yaz zeo zlib userland_GNU 
kernel_linux elibc_glibc" 
Unset:  ASFLAGS, CTARGET, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Mart Raudsepp gentoo-dev 2006-04-10 16:13:36 UTC
wx/wx.h is not supposed to include every header, only the most used ones. wx/socket.h is apparently not deemed to be used that often, and I agree there. If you disagree, then you should check out the feature request/bug tracker of wxWidgets.

See the wxWidgets manuals "Multi-platform development with wxWidgets" -> "Include Files" topic for reference:
"The main include file is "wx/wx.h"; this includes the _most commonly_ used modules of wxWidgets." (emphasize mine)
Comment 2 Mark Loeser (RETIRED) gentoo-dev 2006-04-10 17:31:10 UTC
Not a bug.
Comment 3 Tommy McDaniel 2006-04-18 16:26:17 UTC
One gets the opposite impression from the last of the following sentences taken from their Hello World sample: "You have to include wxWidgets' header files, of course. This can be done on a file by file basis (such as #include "wx/window.h") or using one global include (#include "wx/wx.h")." Oh well, I see what you mean.