[Bug 1083962] Review Request: maxscale - A database-centric proxy that works with MariaDB and MySQL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1083962



--- Comment #12 from Paulo Andrade <paulo.cesar.pereira.de.andrade@xxxxxxxxx> ---
(In reply to Oden Eriksson from comment #9)
> (In reply to Paulo Andrade from comment #8)
> > On a quick look, I can say that I do not like when
> > one does not run a proper "make install" in %install,
> > this can easily break in subtle ways, if not in the
> > first spec write, whenever the package is updated.
> > I see the Makefile at least appears to respect
> > $DESTDIR for the install target.
> 
> I know. The problem is that libtool for some reason swaps linking order when
> relinking while doing make install. I'm not a autopoo or libtool guru enough
> to fix that. Upstream knows that autopoo should be implemented and this
> might happen in a future release.

  Can you give a few more details, like an example of what
it does wrong?
  Anyway, let me do it :-)
<my test>
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.dP7HCf
+ umask 022
+ cd /home/pcpa/rpmbuild/BUILD
+ '[' /home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64 '!=' / ']'
+ rm -rf /home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64
++ dirname /home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64
+ mkdir -p /home/pcpa/rpmbuild/BUILDROOT
+ mkdir /home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64
+ cd maxscale-0.5.0
+ make install
DESTDIR=/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64
(cd server; make
DESTDIR=/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64 install)
make[1]: Entering directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server'
install -b MaxScale_template.cnf
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/etc
install ../Documentation/*.pdf
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/share/doc/maxscale
(cd core; make
DESTDIR=/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64 install)
make[2]: Entering directory
`/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server/core'
install -c -d
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin
libtool --mode=install install -c -m 755 maxscale
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin
libtool: install: install -c -m 755 maxscale
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin/maxscale
libtool --mode=install install -c -m 755 maxkeys
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin
libtool: install: install -c -m 755 maxkeys
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin/maxkeys
libtool --mode=install install -c -m 755 maxpasswd
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin
libtool: install: install -c -m 755 maxpasswd
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/bin/maxpasswd
#install -c -d
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/lib
#install -c -D /home/pcpa/usr/lib64/libmysqld.a
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/lib
#install -c -d
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/MaxScale/mysql
#install -c /home/pcpa/usr/share/mysql/errmsg.sys
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/MaxScale/mysql
make[2]: Leaving directory
`/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server/core'
(cd modules/routing; make
DESTDIR=/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64 install)
make[2]: Entering directory
`/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server/modules/routing'
install -c -d
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/lib/maxscale/modules
libtool --mode=install install -c libtestroute.la
/home/pcpa/rpmbuild/BUILDROOT/maxscale-0.5.0-1.fc21.x86_64/usr/lib/maxscale/modules
libtool: install: error: cannot install `libtestroute.la' to a directory not
ending in /usr/lib64/maxscale/modules
make[2]: *** [install] Error 1
make[2]: Leaving directory
`/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server/modules/routing'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/server'
make: *** [install] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.dP7HCf (%install)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.dP7HCf (%install)
</my test>

  At first, apparently it is not properly replacing $(libdir), i.e.
lib != lib64 (probably make install would work on i586).

> > You should run "make testall" in %check and give
> > good reasons if it does not work. This way both you
> > and reviewer will at least have a good hint the
> > package is functional if it pass %check.
> 
> Same here. Poor autopoo support.

  Do you mean "make testall" only works after installing
to / instead of %{buildroot}?

<my test>
+ make testall
make -C test HAVE_SRV=Y testall
make[1]: Entering directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/test'
make cleantests
make[2]: Entering directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/test'
rm -fr *~
make -C /home/pcpa/src/bazaar/tmp/maxscale/log_manager          cleantests
make: Entering an unknown directory
make: *** /home/pcpa/src/bazaar/tmp/maxscale/log_manager: No such file or
directory.  Stop.
make: Leaving an unknown directory
make[2]: *** [cleantests] Error 2
make[2]: Leaving directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/test'
make[1]: *** [testall] Error 2
make[1]: Leaving directory `/home/pcpa/rpmbuild/BUILD/maxscale-0.5.0/test'
make: *** [testall] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.FbAJsu (%check)
</my test>

  Looks like something is improperly hardcoded
($HOME/src/bazaar/tmp/maxscale)

> > Please post a link to the failed arm build, to
> > have an idea of why it fails.
> 
> http://koji.fedoraproject.org/koji/taskinfo?taskID=6713406
>  
> > I suggest renaming the patches to maxscale-xyz.patch,
> > and use "PatchN: %{name}-xyz.patch", but this is a
> > cosmetic change, just a common pattern in fedora
> > packages.
> > 
> > Instead of using CFLAGS="%{optflags} -fpie" you
> > should use https://fedoraproject.org/wiki/Packaging:Guidelines#PIE
> > that automatically does it for you; could then just need
> > to force CFLAGS="%{optflags} and LDFLAGS="%{__global_ldflags}"
> > But I am not sure if it is handled the same way for rhel.
> 
> No it doesn't. Sure, I could use conditionals here but...

  My instinct says epel6 supports it :-) Do you need it this
package in rhel5?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review





[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]