Skip to content

Conversation

@eunos-1128
Copy link
Collaborator

This pull request updates the io.github.pemsley.coot.yaml file to standardize and improve build configurations across multiple modules. The changes primarily involve adding or modifying compiler flags (cflags and cxxflags) to ensure compatibility and optimization, as well as updating some configuration options for specific modules.

Compiler flag improvements:

  • Added -fPIC to cflags and/or cxxflags for modules such as gemmi, fftw, mmdb2, libccp4, clipper, raster3d, and others to improve position-independent code generation. ([[1]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efR34-R35), [[2]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efR47-R48), [[3]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL60-R64), [[4]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efR76-R78), [[5]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL88-R95), [[6]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL114-R121), [[7]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL332-R342))
  • Updated cxxflags to include -std=c++11 for modules like mmdb2 and clipper to ensure compatibility with modern C++ standards. ([[1]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL60-R64), [[2]](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL88-R95))

Configuration updates:

  • Adjusted config-opts for the cmake-ninja build system in the openblas module, including enabling -DDYNAMIC_ARCH=ON, updating -DNUM_THREADS to 64, and setting -DUSE_OPENMP=ON for better performance and multi-threading support. ([io.github.pemsley.coot.yamlL184-R197](https://github.com/flathub/io.github.pemsley.coot/pull/80/files#diff-55b9e84a877dbbef6cbca71f44f2c253217232100c0d81f840e1abf5346b24efL184-R197))

@eunos-1128 eunos-1128 requested a review from Copilot June 12, 2025 03:26
@eunos-1128 eunos-1128 self-assigned this Jun 12, 2025
@flathubbot
Copy link

🚧 Test build enqueued.

@flathubbot
Copy link

🚧 Started test build.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR standardizes and enhances build configurations by adding position-independent code flags and ensuring modern C++ support, as well as tuning the OpenBLAS build for threading and performance.

  • Added -fPIC to cflags/cxxflags across modules for PIC compatibility
  • Introduced -std=c++11 in C++ modules (mmdb2, clipper)
  • Updated OpenBLAS config-opts for threading, OpenMP, and dynamic architecture
Comments suppressed due to low confidence (2)

io.github.pemsley.coot.yaml:34

  • [nitpick] There’s repeated duplication of -fPIC and optimization flags in every module. Consider defining a top-level default under a shared build-options block or using YAML anchors to DRY up these common flags.
build-options:

io.github.pemsley.coot.yaml:64

  • [nitpick] Instead of embedding -std=c++11 directly in cxxflags, consider using -DCMAKE_CXX_STANDARD=11 in config-opts for CMake-based modules to ensure consistency and better integration with CMake's own standard-checking.
cxxflags: "-g -O2 -fPIC -std=c++11"

@flathubbot
Copy link

Test build succeeded. To test this build, install it from the testing repository:

flatpak install --user https://dl.flathub.org/build-repo/191611/io.github.pemsley.coot.flatpakref

@eunos-1128 eunos-1128 merged commit d64a833 into flathub:alpha Jun 12, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants