Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 314115 - www-servers/gatling issues related to dietlibc
Summary: www-servers/gatling issues related to dietlibc
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Patrick Lauer
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: bundled-libs
  Show dependency tree
 
Reported: 2010-04-09 13:02 UTC by Diego Elio Pettenò (RETIRED)
Modified: 2012-04-10 02:58 UTC (History)
6 users (show)

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


Attachments
www-servers/gatling-0.12-r2.ebuild (gatling-0.12-r2.ebuild,1.43 KB, text/plain)
2012-04-04 16:42 UTC, Peter Große
Details
gatling-0.12-FLAGS.patch (gatling-0.12-FLAGS.patch,1.09 KB, patch)
2012-04-04 16:42 UTC, Peter Große
Details | Diff
Changes to make to gatling-0.12-r2.ebuild (gatling-0.12-r2-ebuild.diff,758 bytes, patch)
2012-04-04 21:48 UTC, Sebastian Pipping
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Diego Elio Pettenò (RETIRED) gentoo-dev 2010-04-09 13:02:57 UTC
This should probably be put under conditional of USE=static or USE=diet (like app-shells/shish).
Comment 1 Patrick Lauer gentoo-dev 2010-05-03 18:00:17 UTC
Upstream says: ( http://www.fefe.de/gatling/ )
Small! (125k static Linux-x86 binary with HTTP, FTP and SMB support) 

So in this case I'd consider it a feature and not a bug. But - patches welcome, if you feel the need to diverge from upstream ...
Comment 2 Sebastian Pipping gentoo-dev 2012-03-10 00:30:56 UTC
+*gatling-0.12-r1 (10 Mar 2012)
+
+  10 Mar 2012; Sebastian Pipping <sping@gentoo.org> +gatling-0.12-r1.ebuild,
+  metadata.xml:
+  Fix compilation on amd64, make dietlibc optional (bug #314115), allow
+  optional SSL
+
Comment 3 Peter Große 2012-04-04 16:42:32 UTC
Created attachment 307795 [details]
www-servers/gatling-0.12-r2.ebuild

Fixed ebuild.

With r2 of this ebuild dietlibc support is now broken for different reasons:

* libowfat has to be build with the same useflag

compiling fails for USE=-diet when trying to link against libowfat[diet]

* openssl in tree doesn't support dietlibc, so the use flags ssl and diet block each other

* GNUMakefile patch doesn't work for USE=diet. Working replacement provided.
Comment 4 Peter Große 2012-04-04 16:42:58 UTC
Created attachment 307797 [details, diff]
gatling-0.12-FLAGS.patch
Comment 5 Sebastian Pipping gentoo-dev 2012-04-04 21:48:52 UTC
Created attachment 307839 [details, diff]
Changes to make to gatling-0.12-r2.ebuild
Comment 6 Sebastian Pipping gentoo-dev 2012-04-04 22:32:00 UTC
(In reply to comment #3)
> Created attachment 307795 [details]
> www-servers/gatling-0.12-r2.ebuild
> 
> Fixed ebuild.
> 
> With r2 of this ebuild dietlibc support is now broken for different reasons:
> 
> * libowfat has to be build with the same useflag
> 
> compiling fails for USE=-diet when trying to link against libowfat[diet]
>
> * openssl in tree doesn't support dietlibc, so the use flags ssl and diet
> block each other

For me, the combinations

  dev-libs/libowfat[diet]
  gatling[diet,-ssl]

and

  dev-libs/libowfat[diet]
  gatling[-diet,-ssl]

both fail to build whereas

  dev-libs/libowfat[-diet]
  gatling[-diet,-ssl]

and

  dev-libs/libowfat[-diet]
  gatling[diet,-ssl]

and

  dev-libs/libowfat[-diet]
  gatling[diet,ssl]
          ^^^^^^^^
all compile well.

To me that indicates:
- libowfat[diet] is the troublemaker
- ssl and dietlibc can work together

I propose

  >=dev-libs/libowfat-0.25[-diet]

for DEPEND to address the problem.


> * GNUMakefile patch doesn't work for USE=diet.

I thought it did.  I removed more or less the same patch for -r2 that you a proposing now.  Can you point to specific problems?
Comment 7 Peter Große 2012-04-04 22:59:15 UTC
For compiling and linking using dietlibc you prepend /usr/bin/diet to the compiler command line. In the GNUMakefile this is done by the line "CC:=$(DIET) $(CC)" but this assignment gets overridden by "emake CC=${tc-getCC)". So setting the DIET variable on the emake line has no effect (from what I saw).

When diet is not prepended, it always compiles with normal gcc and gets linked to glibc, no matter if diet use flag is set or not. I think this explains your working (and not working) combinations.

In the GNUMakefile of libowfat all compiler calls are like "$(DIET) $(CC)". Not here. My patch should do the same, but touches less lines ;)
Comment 8 Sebastian Pipping gentoo-dev 2012-04-10 02:58:56 UTC
(In reply to comment #7)
> For compiling and linking using dietlibc you prepend /usr/bin/diet to the
> compiler command line. In the GNUMakefile this is done by the line
> "CC:=$(DIET) $(CC)" but this assignment gets overridden by "emake
> CC=${tc-getCC)". So setting the DIET variable on the emake line has no
> effect (from what I saw).

Good catch!


> When diet is not prepended, it always compiles with normal gcc and gets
> linked to glibc, no matter if diet use flag is set or not. I think this
> explains your working (and not working) combinations.
> 
> In the GNUMakefile of libowfat all compiler calls are like "$(DIET) $(CC)".
> Not here. My patch should do the same, but touches less lines ;)

Thanks for the hint on make's override instruction.
I have used that with a more ebuild-centric approach now.

+  10 Apr 2012; Sebastian Pipping <sping@gentoo.org> gatling-0.12-r2.ebuild,
+  +files/gatling-0.12-compile.patch:
+  Unbreak diet mode (bug #314115)
+

If you anything remains broken please re-open again.