-
-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
switch build system? #146
Comments
I can swap Travis to use focal for both fdpp and dosemu2, which is probably the right thing to do now anyway. Option 4 seems to align quite nicely with dosemu-legacy. Locally I'm still using Bionic simply because the Lubuntu on Focal is so awful after its switch to the Qt tookit, that it was unusable! I'm probably going to need to switch desktops to Xubuntu which breaks my heart as Lubuntu on Bionic is just right for me. |
I don't prefer 4 here because, make was never a problem here
Build options:
I'd say, the list is not as small as |
This allows to get Bionic back in. Xenial doesn't have lld, so remains broken.
I reverted to objcopy to get at |
@stsp why do you write It's quite difficult |
I think you see the automatic |
I'm not sure that happened, I think @minexew is just generally curious about your automatic-wrapping-fobia ;) |
I think its time to push this forward |
It may be considered in the future, and you can open a feature request first.
like cmake/cpack? We are also planning to implement a similar feature to generate deb/nsis/rpm packages, but it may take some time, maybe a few more releases. Next release we will start with an initial implementation of support for nsis packages. Then we'll move on to support other packages like deb, rpm, etc. BTW, xmake has been in the debian and archlinux repository. https://packages.debian.org/sid/xmake |
Generating packages is probably not |
I don't understand the format of these files. Maybe you can say more detail, or you can generate them yourself by way of a custom task. |
rpkg: https://github.com/dosemu2/fdpp/blob/master/fdpp.spec.rpkg I of course can generate them by
|
Note that you will very likely need |
mesonbuild/meson#49 |
Yes, I meant to generate these specs for packaging. xmake doesn't generate package binary directly. It generates all kinds of specs and then calls debuild, nsismake and other packaging tools to generate it. In addition, it does better automation, such as automatically installing required tools(debuild, nsismake ...) and then calling them. Of course, we can also tell xmake to only generate specs and not to auto-package them by using the policy configuration.
We also have a related issue: The custom api feature in the recent dev release is actually in preparation for this packaging feature xmake-io/xmake#4276 And we're already planning to implement the initial nsis spec generation in 2.8.6, as well as some initial design of the packaging and configuration APIs. If all goes well, and I have enough time, I will start trying to implement deb and rpm spec generation and packaging in 2.8.7. Of course, I haven't decided which one to implement first. |
Thanks, this all sounds promising. |
Also you likely know that there is a |
We've been working on historical issues and we just recently resolved a 2 year old issue. xmake-io/xmake#1452 It will take more time because I'm the only one maintaining it. Also, xmake has recently been in debian. https://packages.debian.org/sid/xmake By the time ubuntu 24.04 is released, we can get it. And xmake has also been in archlinux. There is also a fedora packager who is helping us package xmake into the fedora repositories, although I'm not sure when I'll be able to get in yet. |
We'll deal with those differences when we start working on this. |
24.04 ok, any ETA for fedora? |
Ah, you mentioned fedora already, sorry. |
You don't have Mantic builds on LP. |
xmake was just uploaded to the debian repositories last week, and ubuntu 23.10 has been frozen. |
I mean this: |
I haven't added it to the ppa package yet, it will be included in the next xmake release. |
I don't understand. |
I don't know how to enable it on the web fastly, at the moment I can only upload it via ci when a new version is released. https://github.com/xmake-io/xmake/blob/042c51144c1a918d75493a94094e29aeafd924ff/.github/workflows/linux.yml#L50 |
Hmm, not sure. |
I didn't find the corresponding checkbox, but I've uploaded it by modifying the script to use a temporary ci to upload it. You can try it again. |
ajb@calypso:/clients/common/fdpp.git/build$ git diff
diff --git a/configure.meson b/configure.meson
index ab4d8666..ddd8b895 100755
--- a/configure.meson
+++ b/configure.meson
@@ -1,3 +1,8 @@
+#!/bin/sh
+
+
+set -xv
+
if [ -f meson.build ]; then
echo -e "Create a build dir first:"
echo -e "\tmkdir build"
|
so I think line 20 should be |
Ok, not sure what does this mean.
Do you see the same? |
|
this page https://mesonbuild.com/Configuring-a-build-directory.html suggests there's a step called |
Please try to remove |
yes that got further
|
Added patch, can you please re-check? |
Well that's the Jammy build stuffed then
|
Sigh. |
I tend to follow the Ubuntu LTS series, so come April all will be good! |
I am not quite sure things will improve |
is there an updated meson in a PPA we could use? |
That's an interesting question. So... can you try to just to update to |
|
Wow! |
You probably have to remove the packaged meson to be sure of getting the pip3 installed one. |
I did. |
It should have been
|
Yes, that's true. |
I'll see if I can get it to work on CI now. |
Please use |
OK, one problem fixed: There are a few more bugs I filled against |
Fedora builds are no longer using pipx |
1.3.0 is required for `env` in `generator.process()`. dependency.get_pkgconfig_variable() is deprecated.
@stsp Before opening a new ticket about this: I can't build the most recent And I'm just building a new version of I'm sure you've had good reasons to make these changes, but it has gotten noticeably harder to build |
You simply have problems with |
But you can use ubuntu or fedora packages, |
Currently (in master) fdpp is only
buildable on focal and groovy.
Bionic misses llvm-objcopy so
that binutils is needed, and Xenial
misses lld, so binutils is needed.
There are a few ways to solve that:
and forget about Xenial and about
llvm-only build.
(binutils) and forget about non-binutils
builds forever.
non-binutils builds when possible.
Case 3 can only work if you can,
as @andrewbird suggests, say
"lld | binutils" in Build-Depends.
I would personally think I'd go for
1 unless @jschwartzenberg moves
things to 3. :)
The text was updated successfully, but these errors were encountered: