Compile fails, complaining: /usr/include/mysql/mysql.h: In member function `bool CMySQL::mysqlShutdown()': /usr/include/mysql/mysql.h:458: error: too few arguments to function `int mysql_shutdown(MYSQL*, enum_shutdown_level)' shared/src/CMySQL.cpp:454: error: at this point in file Google results in http://lists.freebsd.org/pipermail/freebsd-ports-bugs/2004-August/038820.html which indicates an API change. Reproducible: Always Steps to Reproduce: 1. emerge mysql-4.1.3-beta (private portage ebuild) 2. emerge mysqlcc 3. Portage 2.0.50-r9 (default-x86-2004.2, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-gentoo-r11) ================================================================= System uname: 2.6.7-gentoo-r11 i686 Mobile Intel(R) Pentium(R) 4 - M CPU 1.70GHz Gentoo Base System version 1.4.16 distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/share/config:/usr/kde/3.3/env:/usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distcc fixpackages sandbox" GENTOO_MIRRORS="http://ftp.easynet.nl/mirror/gentoo/ ftp://ftp.easynet.nl/mirror/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apache apm arts artswrappersuid avi berkdb cddr cdr crypt cups encode esd ethereal faad flac foomaticdb gdbm gif gnome gpm gstreamer gtk gtk2 imlib innodb jpeg kde ldap libg++ libwww mad maildir mikmod motif mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl slang spell ssl svga tcpd tiff truetype usb x86 xml2 xmms xv zlib"
Created attachment 37647 [details] Modified ebuild Contains epatch line for using patch to fix bug.
Created attachment 37650 [details, diff] Patch as per URL in bug Fixes compile issue. I realise that MySQLCC is deprecating, but it's still a damn useful tool, and making it support the upcoming engines won't hurt. 'Works for me'
Surely MySQLCC will still fail to compile against versions of MySQL which are not EXACTLY 4.1.3 or 5.0.1 ?
Blah, this is what I get for searching for patches when doing work. Yes, it would. Assuming the API change is permanent, and that #if can use >=, changing the == to >= would suffice I think. Alternately, modifying the epatch test to check to see if the version being emerged is > 4.1.3 or 5.0.1 would also work?
As far as I can see these mysql versions are not even in portage. This let me think why mysqlcc should stay in the tree, when there is no problem for you to get along with this development stuff on your own. You'll surly be able to maintain a mysqlcc ebuild in your local overlay. Anyway, I changed the patch to >=4.1.3, added a warning and marked it stable on x86 to let users of 0.9.3 know about it. In a few days teh ebuild will be masked and fade away after a while.