From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Wielkiewicz Subject: Re: Packaging Jami progress Date: Wed, 4 Dec 2019 15:36:31 +0100 Message-ID: <20191204153631.509b9afb@interia.pl> References: <20191104214754.793ec2ff@interia.pl> <874kzajvy9.fsf@ambrevar.xyz> <20191111163843.0629ef41@kompiuter> <87o8xe4d5m.fsf@ambrevar.xyz> <87eeya49hf.fsf@ambrevar.xyz> <20191114214010.7b61005f@kompiuter> <87lfsikttk.fsf@ambrevar.xyz> <20191114231605.0ecec870@kompiuter> <87a797o6hb.fsf@ambrevar.xyz> <20191125221517.1140d0c9@kompiuter> <874kyrlzmn.fsf@ambrevar.xyz> <20191126203259.0f4141ea@kompiuter> <20191130192121.11e0c968@kompiuter> <87fti52or5.fsf@ambrevar.xyz> <20191201173411.042e68f2@kompiuter> <878snw2bpn.fsf@ambrevar.xyz> <20191203164402.77a8c728@interia.pl> <87tv6hieeg.fsf@ambrevar.xyz> <20191203190235.53765cba@kompiuter> <87fti1mf1u.fsf@ambrevar.xyz> <87d0d5mez0.fsf@ambrevar.xyz> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:44678) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1icVlt-0003VE-Bc for guix-devel@gnu.org; Wed, 04 Dec 2019 09:36:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1icVlr-0004W4-7n for guix-devel@gnu.org; Wed, 04 Dec 2019 09:36:53 -0500 Received: from smtpo.poczta.interia.pl ([217.74.65.239]:45531) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1icVln-0004TW-Ew for guix-devel@gnu.org; Wed, 04 Dec 2019 09:36:49 -0500 In-Reply-To: <87d0d5mez0.fsf@ambrevar.xyz> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Pierre Neidhardt Cc: Guix-devel Hi, It turns out ffmpeg needs to be patched, just like pjproject and there could be more packages to patch. I quickly searched for "*.patch" in the contrib folder and that's what I got: ./argon2/pkgconfig.patch ./argon2/argon2-vs2017.patch ./pthreads/pthreads-uwp.patch ./pthreads/pthreads-vs2017.patch ./pthreads/pthreads-windows.patch ./vpx/windows-vpx_config.patch ./gnutls/no-create-time-h.patch ./gnutls/mac-keychain-lookup.patch ./gnutls/gnutls-uwp.patch ./gnutls/read-file-limits.h.patch ./gnutls/gnutls-mscver.patch ./gnutls/gnutls-disable-getentropy-osx.patch ./gnutls/gnutls-3.6.7-win32-vs-support.patch ./gnutls/gnutls-no-egd.patch ./gnutls/gnutls-3.6.7-win32-compat.patch ./gnutls/downgrade-gettext-requirement.patch ./gpg-error/gpgerror-android.patch ./gpg-error/missing-unistd-include.patch ./gpg-error/windres-make.patch ./ffmpeg/remove-mjpeg-log.patch ./ffmpeg/windows-configure-libmfx.patch ./ffmpeg/change-RTCP-ratio.patch ./ffmpeg/rtp_ext_abs_send_time.patch ./ffmpeg/windows-configure-ffnvcodec.patch ./ffmpeg/windows-configure.patch ./gmp/gmp_addaddmul_1msb0.patch ./gmp/clock_gettime.patch ./libressl/getpagesize.patch ./libressl/0001-build-don-t-fetch-git-tag-if-openbsd-directory-exist.patch ./iconv/libiconv-win64.patch ./iconv/bins.patch ./iconv/libiconv-winrt.patch ./iconv/libiconv-android-ios.patch ./iconv/win32.patch ./restinio/cmake.patch ./jack/config-osx.patch ./natpmp/natpmp-win32-ssize_t.patch ./x264/0001-use-internal-log2f.patch ./x264/remove-align.patch ./x264/x264-uwp.patch ./asio/no_tests_examples.patch ./asio/asio-vcxproj.patch ./asio/asio-uwp.patch ./uuid/android.patch ./gcrypt/0001-Fix-assembly-division-check.patch ./gcrypt/fix-amd64-assembly-on-solaris.patch ./yaml-cpp/cmake.patch ./media-sdk/windows-static-lib-build.patch ./gsm/include_ios.patch ./gsm/gsm-cross.patch ./upnp/threadpool.patch ./upnp/win_inet_pton.patch ./upnp/libupnp-ipv6.patch ./upnp/miniserver.patch ./upnp/libupnp-windows.patch ./jsoncpp/jsoncpp-vs2017.patch ./pjproject/sip_config.patch ./pjproject/ice_config.patch ./pjproject/fix_first_packet_turn_tcp.patch ./pjproject/disable_local_resolution.patch ./pjproject/fix_ioqueue_ipv6_sendto.patch ./pjproject/rfc2466.patch ./pjproject/fix_assert_on_connection_attempt.patch ./pjproject/pj_ice_sess.patch ./pjproject/fix_turn_connection_failure.patch ./pjproject/multiple_listeners.patch ./pjproject/rfc6544.patch ./pjproject/ignore_ipv6_on_transport_check.patch ./pjproject/uwp_vs.patch ./pjproject/win_vs2017_props.patch ./pjproject/ipv6.patch ./pjproject/win32_vs_gnutls.patch ./pjproject/add_dtls_transport.patch ./pjproject/android.patch ./pjproject/fix_turn_alloc_failure.patch ./pjproject/fix_turn_fallback.patch ./pjproject/fix_ebusy_turn.patch ./pjproject/win_config.patch ./http_parser/http_parser-vs.patch ./openssl/openssl-uwp.patch ./portaudio/dsound_utf8.patch ./portaudio/pa-dsound.patch ./portaudio/pa-vs2017.patch ./portaudio/pa-dsound-aecns.patch ./portaudio/pa-uwp.patch ./dbus-cpp/dbus-c++-writechar.patch ./dbus-cpp/dbus-c++-gcc4.7.patch ./dbus-cpp/dbus-c++-threading.patch ./secp256k1/secp256k1-vs2017.patch It would be good If there was a procedure (or a macro?) accepting the name of the dependency and the list of patches, simmilar to this: (lambda* (#:key inputs #:allow-other-keys) (let ((savoir-faire-linux-patches-directory "Savoir-faire Linux patches") (savoir-faire-linux-patches '("fix_turn_alloc_failure" "rfc2466" "ipv6" "multiple_listeners" "pj_ice_sess" "fix_turn_fallback" "fix_ioqueue_ipv6_sendto" "add_dtls_transport" "rfc6544" "ice_config" "sip_config" "fix_first_packet_turn_tcp" "fix_ebusy_turn" "ignore_ipv6_on_transport_check" "fix_turn_connection_failure" "disable_local_resolution"))) (mkdir-p savoir-faire-linux-patches-directory) (invoke "tar" "-xvf" (assoc-ref inputs "savoir-faire-linux-patches") "-C" savoir-faire-linux-patches-directory "--strip-components=5" "ring-project/daemon/contrib/src/pjproject") (for-each (lambda (file) (invoke "patch" "--force" "-p1" "-i" (string-append savoir-faire-linux-patches-directory "/" file ".patch"))) savoir-faire-linux-patches)) #t) The question is - if I defined a procedure named "jami-apply-patches" or whatever, will importing it using #:use-module (gnu packages telephony jami-apply-patches) work, or do I need to explicitly export it? Also how to add such procedure to the "add-after" field without causing an error? Jan Wielkiewicz