Created attachment 208278 [details]
patch for sane-backends
you find a patch to upgrade graphics/sane-backend to the current version 1.0.28 in the attachment.
Pay attention to the following changes in this port:
- I removed the options for IEEE1284 because it requires an i386 computer that I don't have.
- The sane-backends kvs40xx and mustek_usb2 are skipped during build because of pthread library issue but it is investigated: https://gitlab.com/sane-project/backends/issues/153
The sane-backend port of 1.0.28 is useful because it supports some modern scanners like CanoScan LiDE 400.
Is this patch sufficient to get integrated into SVN or is something missing?
LIB_DEPENDS= libpng.so:graphics/png \
+ libtiff.so:graphics/tiff \
This cannot be right. Why does sane-backends link with libpkg now?
-@sample etc/sane.d/dist/abaton.conf etc/sane.d/abaton.conf
These changes will cause people's configuration files to be overwritten
on the next update. Please restore the previous behavior.
Please restore files/patch-tools_sane-desc.c since it reverts ports r464242
for no reason.
> I removed the options for IEEE1284 because it requires an i386 computer that I don't have.
Is there a reason to remove the option beyond that? Because others
might still use it.
> The sane-backends kvs40xx and mustek_usb2 are skipped during build because of pthread library issue but it is investigated: https://gitlab.com/sane-project/backends/issues/153
But they still appear in the plist?
(In reply to Tobias Kortkamp from comment #1)
I added libpkg to LIB_DEPENDS in order to fix the following error during make:
Error: /usr/local/lib/sane/libsane-magicolor.so.1.0.28 is linked to /usr/local/lib/libpkg.so.4 from ports-mgmt/pkg but it is not declared as a dependency
Warning: you need LIB_DEPENDS+=libpkg.so:ports-mgmt/pkg
What do you recommend in this case? Can I ignore it?
Concerning your other remarks:
- @sample configuration files: I will fix pkg-plist.
- files/patch-tools_sane-desc.c: I will restore it.
- IEEE1284 option: I can restore it but I cannot test it.
- The sane-backends kvs40xx and mustek_usb2: They appear in pkg-plist because I patched the configure script. Yes, they are pkg-plist. Mea culpa!
I will come back when the patch is done.
(In reply to mq from comment #2)
> What do you recommend in this case? Can I ignore it?
It would be better to dig deep and find out what causes it. It
seems to be a local issue that I cannot reproduce in Poudriere. It
might only affect users who build ports in dirty environments
A good starting point would be to examine the build log for occurrences
of libpkg, -lpkg or similar.
(In reply to Tobias Kortkamp from comment #3)
The pkg dependency comes from net-snmp:
$ net-snmp-config --libs
-L/usr/lib -lm -lkvm -ldevstat -L/lib -L/usr/local/lib -L/usr/local/lib -lnetsnmp -lcrypto -lelf -lpkg -lssp_nonshared -lregex
I have installed it as a package from quarterly branch.
The libpkg dependency is already topic in another ticket:
net-mgmt/net-snmp [PATCH] Optionalize libpkg support to better support libressl
As a next step, I will setup poudriere to check the build there.
Created attachment 208921 [details]
2nd iteration of patching graphics/sane-backends to version 1.0.28
you find the second iteration of the sane-backends patch in the attachment.
A run of "poudriere testport" went fine except messages like
Deleting files for sane-backends-1.0.28...
sane-backends-1.0.28: missing file /usr/local/etc/sane.d/pixma.conf
Probably, these messages are due to @sample.
Let me know if there is still something missing for the patch to meet FreeBSD port standards!
(In reply to mq from comment #6)
> A run of "poudriere testport" went fine except messages like
> Deleting files for sane-backends-1.0.28...
> sane-backends-1.0.28: missing file /usr/local/etc/sane.d/pixma.conf
This is not what I'd consider "fine". ;-)
Look closely at the diff. These lines in pkg-plist
@sample etc/sane.d/hp3900.conf etc/sane.d/hp3900.conf
are not like before and bogus. They should be like
@sample etc/sane.d/dist/hp3900.conf etc/sane.d/hp3900.conf
It is no wonder that they are flagged. Please fix this. You probably
also need to restore patch-backend__Makefile.in.
Also look at /usr/ports/Keywords/sample.ucl to understand how @sample
works and how something like "@sample foo foo" does not make sense.
Created attachment 209173 [details]
3rd iteration for patching sane-backends 1.0.28 for FreeBSD.
(In reply to Tobias Kortkamp from comment #7)
you find the 3rd iteration for patching sane-backends 1.0.28 for FreeBSD.
In particular, I have respected your advice for @sample and have restored patch-backend__Makefile.in. A run of `poudriere testport -o graphics/sane-backends ...` succeeded. Let me know if we need another iteration.
I am so interested in sane-backends 1.0.28 because since that version the Canon scanners Canoscan LiDE 300 and 400 are supported. These scanners are Canon's mainstream scanners that you find in many computer shops.
LGTM. Committed, thanks!
A commit references this bug:
Date: Sat Nov 16 06:05:56 UTC 2019
New revision: 517720
graphics/sane-backends: Update to 1.0.28
This adds support for some modern scanners like the CanoScan LiDE 400.
- Take maintainership for a while
Submitted by: mq <email@example.com>
(In reply to Tobias Kortkamp from comment #10)
Thank you for your patience!
A commit references this bug:
Date: Sat Nov 16 14:53:25 UTC 2019
New revision: 517748
graphics/sane-frontends: Unbreak after r517720
gtkglue.c:1479:24: error: use of undeclared identifier 'SANE_CAP_ALWAYS_SETTABLE'
if (!(opt->cap & SANE_CAP_ALWAYS_SETTABLE))
1 error generated.
Reported by: cmt
Obtained from: Fedora
Pointy hat: tobik