From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4Zv4Ls1Svdz3348 for ; Fri, 9 May 2025 10:03:01 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) client-signature RSA-PSS (4096 bits)) (Client CN "mail01.haj.ipfire.org", Issuer "R10" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4Zv4Ln54K7z2y59 for ; Fri, 9 May 2025 10:02:57 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4Zv4Lm6lSlz1Zd; Fri, 9 May 2025 10:02:56 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1746784977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FS9MpQ1Z7B5tfNXPOUTvfoHa/R/O5zFB5N7INTfLFxQ=; b=ES23RsEip6YLq3oIEQSZ6Qn3s6FuFGb6ZlnDTpKW1hx7KVkr+R5fvtl7SlcKQCEI0r873w VXAbvpLy/27oI5AA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1746784977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FS9MpQ1Z7B5tfNXPOUTvfoHa/R/O5zFB5N7INTfLFxQ=; b=sOENoox0jzTvk0vrwTTcihtadEUj9k/1HNkG7YXgdAkgOJeIUg1mhZHvoNV/6iptjN51Bp e+ysixRPlf0pqgzTmsM+no4Vm6EVlww4SVfeWYMaXofmbQCQ9RN+l3v/zzx6zp4iLGfyfh SRgjVMDWDEnaOnIwi0Ri+xIFvj4sWr87zrxo+YyzPQDQCEDfc4xuSTVkhHMSCCTFwq/F4h sWV8J0FZtgn9pF8AT/V2P56NN+LTLY/6SzWwolmqhMwgAA95mRfY7wH7A85FX2JuE70mEh mH9zH2+Ho3xWtVHNphp0W0NxhbEq+uaRFXdYzEX8SIfoiY1aM/fpUsN0g8ANxQ== Message-ID: <425a82d7-dc7b-4aa3-953e-f16d7c3e2835@ipfire.org> Date: Fri, 9 May 2025 12:02:52 +0200 Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 Subject: Re: Problem building cdrkit with latest cmake From: Adolf Belka To: Michael Tremer Cc: "IPFire: Development-List" References: <8f4f56f8-2dd5-4d4d-a1d0-aa2c88455c54@ipfire.org> Content-Language: en-GB In-Reply-To: <8f4f56f8-2dd5-4d4d-a1d0-aa2c88455c54@ipfire.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Michael, On 08/05/2025 21:00, Adolf Belka wrote: > Hi Michael, > > On 08/05/2025 15:19, Michael Tremer wrote: >> Hello Adolf, >> >> Yet another success store of an alternative to configure/make/make install. >> >> I remember this from IPFire 3 where we have made the transition to libburn. It needs three packages: >> >> https://git.ipfire.org/?p=ipfire-3.x.git;a=blob;f=libburn/libburn.nm;hb=f1a186fd032e8e5718e41120a27103c83ed69a3e >> https://git.ipfire.org/?p=ipfire-3.x.git;a=blob;f=libisofs/libisofs.nm;hb=f1a186fd032e8e5718e41120a27103c83ed69a3e >> https://git.ipfire.org/?p=ipfire-3.x.git;a=blob;f=libisoburn/libisoburn.nm;hb=f1a186fd032e8e5718e41120a27103c83ed69a3e >> >> We are using the whole thing here: >> >> https://git.ipfire.org/?p=people/ms/bricklayer.git;a=blob;f=src/bricklayer-master.in;hb=3b216919f31dc6ca3b44d9d25536626b60aea9f1#l527 >> >> So it seems to generate a bootable ISO and that is all we need. >> >> Happy to make the transition in IPFire 2 as well. > > I think for IPFire-2 we can just use the xorriso package that libburn supplies to the Gnu Project. > > This is a self contained source tarball that includes the bits from libisofs and libisoburn, sufficient to do the cli commands for xorriso and xorrisofs. > > https://www.gnu.org/software/xorriso/ > > I think this makes it simpler for IPFire-2 and it supplies what is needed for creating a bootable ISO. > > My plan would be to follow this path unless you think that installing the three full packages that you listed is the better thing to do also for IPFire-2. I did a test build of the xorriso package and made a symbolic link of xorrisofs to mkisofs in the LFS so that no changes should be needed anywhere else. Anything using mkisofs would then use xorrisofs with the same arguments as used for mkisofs. It successfully produced an iso, which was bootable as I was able to install IPFire with it onto my vm testbed. Couldn't test out the making of the backupiso as that downloads the current released iso and my test build is with CU195. Are you okay with using the xorriso source tarball or should I do a build and patch submit with the full libburn, libisofs & libisoburn packages? The Gnu xorriso site says " Software copies included in GNU xorriso: GNU xorriso is feature-wise equivalent to the dynamic compilation of libburnia libraries, libjte, and libburnia program xorriso. It restricts itself to a technical form where the legal commitments of the libburnia project and the legal intentions of FSF match completely." so it is clearly a limited form but it looks like it should be sufficient for IPFire-2.x. Regards, Adolf. > > Regards, > Adolf. > >> >> -Michael >> >>> On 8 May 2025, at 13:53, Adolf Belka wrote: >>> >>> Hi Everyone. >>> >>> I found that curl had three updates for a range of bug fixes and so I went ahead and ran a build of curl-1.13.0. It built without any problems. >>> >>> However cmake, a couple of steps later failed to build because of some changes in curl to certain names. >>> >>> So I installed the latest cmake and then curl and cmake both built without any issues. >>> >>> Then json-c failed due to the min ver of cmake being supported is now 3.5 and in the near future this will be changed to 3.10. >>> >>> I found a patch from json-c that changed the minimum required version from 2.8 to 3.9...3.12 and json-c then successfully built. >>> >>> libjpeg successfully built as it already had an acceptable min cmake version. >>> >>> libssh failed to build so it was updated to 0.11.1 and this built successfully. >>> >>> Then I came to cdrkit!!! >>> >>> This failed to build due to too low a min version so I changed the min version from 2.8 to 3.25 but it the failed to build due to the cmake_policy(SET CMPOO15 OLD) and OLD is no longer allowed. It has to be NEW. >>> So I changed the policy to NEW and then it starting building cdrkit but then the build failed due to the fact that it could not find xconfig.h >>> In the source file there is xconfig.h.in but it is not getting built into xconfig.h >>> >>> I checked for the existing build that works and found that there were 83 CMAKE Warnings, all related to the fact that Policy CMP0115 is not set. The cmake_policy value in the existing patch was set at CMP0015 so I also tried using cmake_policy(SET CMP0115 NEW) but that still stopped with the missing xconfig.h >>> >>> It looks like the NEW cmake_policy no longer allows error to be ignored and building to continue as has been the case up to date. >>> >>> It looks to me like the only way to fix it is to update cdrkit to properly work with the latest cmake but as the existing version was released 15 years ago and nothing further has been done with it I think it will not get fixed. >>> >>> There is also cdrtools but there are some questions raised by some distros about it's licence. However the developer of that package died and so nothing further has been done with that for the last 7 years. >>> >>> I did find that there is a project called libburnia that has a command line package called xorrisofs which emulates mkisofs. >>> All the mkisofs options that we use in IPFire are available with xorrisofs. The project had the last release of xorriso in 2023 but it looks like the package is released around every two years. The last commits for the project were done 2 weeks ago and there looks to be a continuing ongoing level of commit updates being done. >>> >>> Would it be worthwhile for me to look at building this package and make the changes in the cdrom sections to use xorrisofs instead of mkisofs and see if its emulation of mkisofs produces a working IPFire iso that can be successfully installed and run? >>> >>> If the answer is not a simple one to give then we can discuss this issue in the monthly video conf on Monday. >>> >>> I will comment out cdrkit in my make.sh so I can check out if the other packages that use cmake (12 of them) can all be made to work with the latest cmake. >>> >>> Regards, >>> >>> Adolf. >>> >> >