Here is the answer to the problem I was wrestling with a couple weeks
ago:

  /usr/ports/databases/mysql41-server and 
  /usr/ports/databases/mysql40-server 
do *not* build on 4.x systems unless *some* level of optimization is
turned on.

  'CFLAGS='  fails on 4.x releases;
  'CFLAGS=-O' works. (as does -O -pipe and probably higher levels.)

  Not tested on 5-STABLE.

  I'm guessing that the machines where ports building is tested have
'-O -pipe' or similar as a minimum setting.  However /etc/make.conf has
no default setting for CFLAGS, so with the "out of box" default
settings of everything the build of this port will consistently fail.

  The problem appears to be, from some cursory digging through the
sources, that a number of MySQL functions including MySQL's internal
interfaces to the thread libraries are defined only via inlining if the
OS *platform* is known to support it, but inlining is not actually
enabled (at least in GCC 2.95) unless -O or better is set.

  I tracked this down once I realized that the key difference between
the system where I could build it and the system where I couldn't was
that the former's /etc/make.conf was heavily customized, and the
latter's was untouched except for the variables set by "use.perl ports".

  I'll file a pr on this, as well as the necessary tweaking on my own
system.

  -- Clifton

-- 
          Clifton Royston  --  [EMAIL PROTECTED] 
         Tiki Technologies Lead Programmer/Software Architect
"I'm gonna tell my son to grow up pretty as the grass is green
And whip-smart as the English Channel's wide..."
                                            -- 'Whip-Smart', Liz Phair

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to