チケット #46495

Meson build from tarball uses premade ..._gen.h files

登録: 2023-01-09 13:38 最終更新: 2023-02-21 23:40

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
2

詳細

This is a bit of a problem also with git checkouts, but it occurred to me that release tarballs will be even more affected.

With git checkouts, if one does *only* meson based builds, there's no problem. The problems begin when one does both autotools and meson based builds from the same sources. Autotools builds generate some files to the source directory. Meson generates everything properly to the build directory, so it's not even overwriting autotools generated files. However, when both (potentially outdated) autotools generated version and meson generated version are available, meson may end up using autotools generated one from the source directory.

What makes tarball/release case worse than git checkout case is that those autotools generated files are already present in the tarball. So even if user never does autotools build themselves, meson build does not work properly (if some generated file should be regenerated, i.e. , one tries to build modified version)

Targeting to 3.1, but this isn't necessarily a beta1 blocker - meson based builds are experimental in 3.1, after all. Plan is to make official macOS builds from 3.1 with meson, though.

チケットの履歴 (7 件中 3 件表示)

2023-01-09 13:38 更新者: cazfi
  • 新しいチケット "Meson build from tarball uses premade ..._gen.h files" が作成されました
2023-01-20 18:39 更新者: cazfi
コメント

#42212 resolved the issue for the headers that have tolua_..._open(). Maybe similar solution would work for the rest?

2023-02-17 04:49 更新者: cazfi
コメント

Reply To cazfi

#42212 resolved the issue for the headers that have tolua_..._open(). Maybe similar solution would work for the rest?

Alternatively we could make autotools build to generate those headers to a separate directory that would still be within "the source tree" in that it's distributed with freeciv, but which meson build would not look headers from.

I think that would be more robust solution, but also a lot more involved - so I guess that 3.1.0-beta1 should go by the #42212 route, even if as a temporary solution.

2023-02-17 05:17 更新者: cazfi
  • 担当者(未割り当て) から cazfi に更新されました
  • 解決法なし から 受領 に更新されました
2023-02-21 23:40 更新者: cazfi
  • 状況オープン から 完了 に更新されました
  • 解決法受領 から 修正済み に更新されました

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする