Update OpenWRT feeds code



  • Hello,

    Does anybody know how/where the OpenWRT build system in onion gets the program source and packages from?

    For example lets say I wanted to use ffmpeg, but the one that is in the OpenWRT build is an old version of the ffmpeg source and i want to force it to download the source for the newest ffmpeg and use that in the package when its building.

    Does anybody know how to do that?

    Thanks



  • @nsmith This is controlled by the make file which is in <source>/feeds/packages/multimedia//ffmpeg, Take a look at the developer guide for more detail:

    https://openwrt.org/docs/guide-developer/package-policies#source_packages



  • Actually the package im using is called gphoto2, the one inside Onion docker is from back in 2017, so its missing 5 years of updates.

    I would like to know how to update it. Im not an OpenWRT expert, I was hoping there was an easy way like a command I can type or something like that.

    Or how can I get the Onion developers to update it, or they can just tell me how.

    Thanks



  • @nsmith I took a look at the make file for OpenWrt 18.x gphoto2, it has version 2.5.17, I took a look at the version supported by the Onion build system, it is also version 2.5.17. I took a look at the version of gphoto2 supported by OpenWrt 21, the version is 2.5.26-3.

    So no real huge advance in versions of gphoto2, is there something specific you are struggling with? Perhaps a piece of hardware that is not functioning, with more specific details members may be able to find a solution for you, rather than having to sort out a version upgrade.



  • Gphoto2 uses libgphoto2 so both packages are needed actually. Each new version fixes a lot of bugs. libgphoto2 is up to version 2.5.30 right now, and gphoto2 is at 2.5.28.

    Version 2.5.17 was released 5 years ago, so a lot of bugs have been fixed during that time.

    I tried changing the make files in the onion OpenWRT gphoto2 feed to use the latest versions of gphoto and libgphoto, but when i tried building the onion OpenWRT in the onion docker with the new Makefile pointing to the newest version I get the following errors (seems the patch files need to be modified also which i dont know how to do), any ideas?

    ~/source# make -j8
    ........
    touch /root/source/build_dir/target-mipsel_24kc_musl/libgphoto2-2.5.30/.prepared_b116b1072df06e9be7d5fc37461ba5f7_6664517399ebbbc92a37c5bb081b5c53_check
    . /root/source/include/shell.sh; bzcat /root/source/dl/libgphoto2-2.5.30.tar.bz2 | tar -C /root/source/build_dir/target-mipsel_24kc_musl/libgphoto2-2.5.30/.. -xf -
    [ ! -d ./src/ ] || cp -fpR ./src/. /root/source/build_dir/target-mipsel_24kc_musl/libgphoto2-2.5.30

    Applying ./patches/001-automake-compat.patch using plaintext:
    patching file configure.ac
    Hunk #1 FAILED at 209.
    1 out of 1 hunk FAILED -- saving rejects to file configure.ac.rej
    patching file libgphoto2_port/configure.ac
    Hunk #1 FAILED at 124.
    1 out of 1 hunk FAILED -- saving rejects to file libgphoto2_port/configure.ac.rej
    Patch failed! Please fix ./patches/001-automake-compat.patch!
    Makefile:819: recipe for target '/root/source/build_dir/target-mipsel_24kc_musl/libgphoto2-2.5.30/.prepared_b116b1072df06e9be7d5fc37461ba5f7_6664517399ebbbc92a37c5bb081b5c53' failed
    make[3]: *** [/root/source/build_dir/target-mipsel_24kc_musl/libgphoto2-2.5.30/.prepared_b116b1072df06e9be7d5fc37461ba5f7_6664517399ebbbc92a37c5bb081b5c53] Error 1
    make[3]: Leaving directory '/root/source/feeds/packages/libs/libgphoto2'
    Command exited with non-zero status 2
    time: package/feeds/packages/libgphoto2/compile#1.19#0.32#1.32
    package/Makefile:107: recipe for target 'package/feeds/packages/libgphoto2/compile' failed
    make[2]: *** [package/feeds/packages/libgphoto2/compile] Error 2
    make[2]: Leaving directory '/root/source'
    package/Makefile:103: recipe for target '/root/source/staging_dir/target-mipsel_24kc_musl/stamp/.package_compile' failed
    make[1]: *** [/root/source/staging_dir/target-mipsel_24kc_musl/stamp/.package_compile] Error 2
    make[1]: Leaving directory '/root/source'
    /root/source/include/toplevel.mk:216: recipe for target 'world' failed
    make: *** [world] Error 2
    root@407ba1279d99:~/source#



  • @nsmith modify the makefile like this, to install version 2.5.23, I don't see the hash for .26 which appears to be the most current version:

    PKG_NAME:=gphoto2
    #PKG_VERSION:=2.5.17
    PKG_VERSION:=2.5.23
    PKG_RELEASE:=1
    PKG_MAINTAINER:=Leonardo Medici <leonardo_medici@me.com>
    
    PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
    PKG_SOURCE_URL:=@SF/gphoto
    #PKG_HASH:=aa571039240c68a053be710ca41645aed0239fa2f0b737b8ec767fef29e3544f
    PKG_HASH:=df87092100e7766c9d0a4323217c91908a9c891c0d3670ebf40b76903be458d1
    PKG_LICENSE:=GPL-2.0
    PKG_LICENSE_FILES:=COPYING
    
    


  • @nsmith The makefiles for .26 version supported by the current version of OpenWrt are here:

    https://github.com/openwrt/packages/tree/openwrt-21.02/libs/libgphoto2
    https://github.com/openwrt/packages/tree/openwrt-21.02/multimedia/gphoto2

    They build ok on the OpenWrt build system you are using.



  • @crispyoz I just wanted to use the latest version becuase each release has a lot of bug fixes and upgrades
    the latest version are as follows:

    gphoto2 VERSION 2.5.28
    libgphoto2 VERSION 2.5.30

    I tried putting those versions in the makefile and the matching hashes, but when i compile it gives an error because it seems the patch files that are in there that its trying to apply are from the old version. So i dont know how to fix that is the problem im running into.



  • @nsmith The patch files are available in the links I provided, just replace them in your system. The patch files are in the same directory as the make file, under a patches directory:

    <source>/feeds/packages/multimedia/gphoto2/patches

    The patch files refer to the version so it's surprising the build is trying to apply them to the wrong version.


Log in to reply
 

Looks like your connection to Community was lost, please wait while we try to reconnect.