From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tremer To: development@lists.ipfire.org Subject: Re: [PATCH 2/3] meson: New package. Date: Sun, 27 Dec 2020 12:25:05 +0100 Message-ID: <6DD8689E-8CC6-4DB7-84D3-850B796F5135@ipfire.org> In-Reply-To: <22fc431e-ccbe-dc09-5092-8e519c709621@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0482574417691108499==" List-Id: --===============0482574417691108499== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi, Thanks for looking into this. GitHub is really bad with release tarballs. I usually download the "meson-0.5= 6.0.tar.gz=E2=80=9D version because they usually have generated configure scr= ipts, etc. The others don=E2=80=99t and it would be an extra step in the buil= d process. -Michael > On 27 Dec 2020, at 12:19, Adolf Belka wrote: >=20 > Hi Michael, >=20 > There are two meson-0.56.0.tar.gz files on the meson github site. >=20 > One is labelled meson-0.56.0.tar.gz and the other is labelled Source code (= tar.gz). >=20 > Both of these provide files labelled meson-0.56.0.tar.gz but have different= md5sum values. One is the value Stefan had and the other the value Michael h= ad. >=20 > Quick look through the first parts of both archives doesn't show any file n= ame differences so not sure why they have two versions with the same name. >=20 > Regards, >=20 > Adolf. >=20 >=20 > On 27/12/2020 11:37, Michael Tremer wrote: >> Hi, >> Unfortunately the MD5 checksum is incorrect on this one. >> When I download the official release tarball, I am getting: >> 67ce2c0c3eab1b8ee9ddaa1c5143e7c0 >> Can you confirm? >> -Michael >>> On 26 Dec 2020, at 17:47, Stefan Schantl wr= ote: >>>=20 >>> More and more packages uses meson as build environment instead of >>> autotools or cmake. >>>=20 >>> Signed-off-by: Stefan Schantl >>> --- >>> config/rootfiles/common/meson | 178 ++++++++++++++++++++++++++++++++++ >>> lfs/meson | 80 +++++++++++++++ >>> 2 files changed, 258 insertions(+) >>> create mode 100644 config/rootfiles/common/meson >>> create mode 100644 lfs/meson >>>=20 >>> diff --git a/config/rootfiles/common/meson b/config/rootfiles/common/meson >>> new file mode 100644 >>> index 000000000..a9c2d7ad0 >>> --- /dev/null >>> +++ b/config/rootfiles/common/meson >>> @@ -0,0 +1,178 @@ >>> +#usr/bin/meson >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/PKG-INFO >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/SOURCES.txt >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/dependency_= links.txt >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/entry_point= s.txt >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/requires.txt >>> +#usr/lib/python3.8/site-packages/meson-0.56.0-py3.8.egg-info/top_level.t= xt >>> +#usr/lib/python3.8/site-packages/mesonbuild >>> +#usr/lib/python3.8/site-packages/mesonbuild/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/_pathlib.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/arglist.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/interpreter.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/introspection.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/postprocess.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/printer.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/ast/visitor.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/backends.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/ninjabackend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/vs2010backend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/vs2015backend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/vs2017backend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/vs2019backend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/backend/xcodebackend.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/build.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/client.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/common.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/executor.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/fileapi.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/generator.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/interpreter.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/toolchain.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/cmake/traceparser.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/c.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/c_function_attribu= tes.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/compilers.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/cpp.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/cs.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/cuda.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/d.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/fortran.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/java.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/arm.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/c2000.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/ccrx.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/clang.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/clike.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/compcert.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/elbrus.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/emscripten.= py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/gnu.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/intel.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/islinker.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/pgi.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/visualstudi= o.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/mixins/xc16.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/objc.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/objcpp.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/rust.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/swift.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/compilers/vala.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/coredata.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/base.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/boost.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/coarrays.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/cuda.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/dev.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/hdf5.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/misc.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/mpi.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/platform.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/scalapack.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/dependencies/ui.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/depfile.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/envconfig.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/environment.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/interpreter.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/interpreterbase.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/linkers.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mcompile.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mconf.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mdist.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mesondata.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mesonlib.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mesonmain.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/minit.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/minstall.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mintro.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mlog.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/cmake.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/dlang.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/fs.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/gnome.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/hotdoc.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/i18n.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/keyval.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/modtest.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/pkgconfig.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/python.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/python3.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/qt.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/qt4.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/qt5.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/rpm.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/sourceset.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/unstable_cuda.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/unstable_external_pr= oject.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/unstable_icestorm.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/unstable_simd.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/modules/windows.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mparser.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/msetup.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/msubprojects.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/mtest.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/munstable_coredata.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/optinterpreter.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/rewriter.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/clangformat.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/clangtidy.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/cleantrees.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/cmake_run_ctgt.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/commandrunner.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/coverage.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/delwithsuffix.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/depfixer.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/dirchanger.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/externalproject.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/gettext.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/gtkdochelper.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/hotdochelper.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/meson_exe.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/msgfmthelper.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/regen_checker.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/scanbuild.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/symbolextractor.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/tags.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/uninstall.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/vcstagger.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/scripts/yelphelper.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/cpptemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/cstemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/ctemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/cudatemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/dlangtemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/fortrantemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/javatemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/mesontemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/objcpptemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/objctemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/rusttemplates.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/samplefactory.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/templates/sampleimpl.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/wrap >>> +#usr/lib/python3.8/site-packages/mesonbuild/wrap/__init__.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/wrap/wrap.py >>> +#usr/lib/python3.8/site-packages/mesonbuild/wrap/wraptool.py >>> +#usr/share/man/man1/meson.1 >>> +#usr/share/polkit-1 >>> +#usr/share/polkit-1/actions >>> +#usr/share/polkit-1/actions/com.mesonbuild.install.policy >>> diff --git a/lfs/meson b/lfs/meson >>> new file mode 100644 >>> index 000000000..40275569e >>> --- /dev/null >>> +++ b/lfs/meson >>> @@ -0,0 +1,80 @@ >>> +########################################################################= ####### >>> +# = # >>> +# IPFire.org - A linux based firewall = # >>> +# Copyright (C) 2007-2018 IPFire Team = # >>> +# = # >>> +# This program is free software: you can redistribute it and/or modify = # >>> +# it under the terms of the GNU General Public License as published by = # >>> +# the Free Software Foundation, either version 3 of the License, or = # >>> +# (at your option) any later version. = # >>> +# = # >>> +# This program is distributed in the hope that it will be useful, = # >>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # >>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # >>> +# GNU General Public License for more details. = # >>> +# = # >>> +# You should have received a copy of the GNU General Public License = # >>> +# along with this program. If not, see . = # >>> +# = # >>> +########################################################################= ####### >>> + >>> +########################################################################= ####### >>> +# Definitions >>> +########################################################################= ####### >>> + >>> +include Config >>> + >>> +VER =3D 0.56.0 >>> + >>> +THISAPP =3D meson-$(VER) >>> +DL_FILE =3D $(THISAPP).tar.gz >>> +DL_FROM =3D $(URL_IPFIRE) >>> +DIR_APP =3D $(DIR_SRC)/$(THISAPP) >>> +TARGET =3D $(DIR_INFO)/$(THISAPP) >>> + >>> +########################################################################= ####### >>> +# Top-level Rules >>> +########################################################################= ####### >>> + >>> +objects =3D $(DL_FILE) >>> + >>> +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) >>> + >>> +$(DL_FILE)_MD5 =3D ed0607fe909fae0cda73fc4b86129c49 >>> + >>> +install : $(TARGET) >>> + >>> +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) >>> + >>> +download :$(patsubst %,$(DIR_DL)/%,$(objects)) >>> + >>> +md5 : $(subst %,%_MD5,$(objects)) >>> + >>> +########################################################################= ####### >>> +# Downloading, checking, md5sum >>> +########################################################################= ####### >>> + >>> +$(patsubst %,$(DIR_CHK)/%,$(objects)) : >>> + @$(CHECK) >>> + >>> +$(patsubst %,$(DIR_DL)/%,$(objects)) : >>> + @$(LOAD) >>> + >>> +$(subst %,%_MD5,$(objects)) : >>> + @$(MD5) >>> + >>> +########################################################################= ####### >>> +# Installation Details >>> +########################################################################= ####### >>> + >>> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) >>> + @$(PREBUILD) >>> + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) >>> + >>> + cd $(DIR_APP) && python3 setup.py build >>> + >>> + cd $(DIR_APP) && python3 setup.py install --root=3Ddest >>> + cd $(DIR_APP) && cp -rv dest/* / >>> + >>> + @rm -rf $(DIR_APP) >>> + @$(POSTBUILD) >>> --=20 >>> 2.20.1 >>>=20 --===============0482574417691108499==--