New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] New package: libircclient-1.10 #11495
Conversation
There's a problem when cross-compiling to |
0afb119
to
964b27b
Compare
Added |
I've put in a feature request for a pkg-config file from the developer, but I don't expect results |
srcpkgs/libircclient/template
Outdated
|
||
case "$XBPS_TARGET_MACHINE" in | ||
*-musl) depends+=" musl-devel";; | ||
*) depends+=" glibc-devel";; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't use tabs except before the first non-blank character of a line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I highly doubt that the libc devel packages are even needed at runtime, these 4 lines can most likely be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I highly doubt that the libc devel packages are even needed at runtime, these 4 lines can most likely be removed.
I'm going by what the libircclient
docs say. The way I understand it, those are runtime dependancies.
|
||
vmove usr/include | ||
vmove "usr/lib/*.a" | ||
vman man/libircclient.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also vmove "usr/lib/*.so"
because these will be used by packages depending on this one and are generally not required in the libircclient
package. There only the versioned *.so.*
files should reside.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Won't this break the symlink libircclient.so.x -> libircclient.so
for users who don't install the devel package?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, it's the other way round, or vice-versa: libircclient.so
is a symbolic link to libircclient.so.x
. Packages linking against libircclient.so
will thus resolve that symlink to the numbered so.
And common/shlibs
is Void's way to resolve a dependency from a numbered so back to the library (and version), which then saves you from explicitly defining the required libraries in depends=…
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does that mean I have to rename libircclient.so
to libircclient.so.x
in the do_install()
of libircclient
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just so we're clear, the makefile produces libircclient.so
, not libircclient.so.x
. My experience with libraries is minimal, so I don't know if this is how it's supposed to be done. If not, I can just patch it to produce libircclient.so.x
instead.
For |
I tend to think if you just remove |
Removing
With Also removing
|
I have no idea what the shlibs conflict is about. The file should be identical to the current master, with |
I'll take a closer look at this. |
This template works for me. You need to replace It seems you merged master to your branch without Oh, I didn't try to build the static library. Do you really need it? |
Sorry, @pullmoll, I was rather busy lately. Pardon my ignorance, but what is the point in having a non-devel package, if only the devel package contains the |
Your programs link against the versioned library, the compiler uses the unversioned symlink to "discover" the default version it should link against. |
Take a look at other library providing packages and how they always move the Now some package linking against This allows Imagine HTH |
Thanks, @Duncaen and @pullmoll. Is it not reasonable to include a static library as well though? I see that some libraries include them, but I don't really know when it would be appropriate to do so. |
If you want to statically link it, you use Edit: In general there is no rule about including static libraries or not, this depend on the person packaging or the default of the project that is being packaged. |
I'm not sure if I'm handling the .so files correctly, so any guidance would be appreciated.
I've tested the library only (running irctest.c) on x86_64-glibc.