Skip to content

META: Framework TODO list #6892

@th0ma7

Description

@th0ma7

Also refer to python TODO list: #6619

General

Refactor

  • Refactor toolchain using spksrc.toolchain directory (Toolchain misc fixes #6914)
  • Refactor toolkit using spksrc.toolkit directory
  • Refactor spk.mk using spksrc.spk directory

github-action

  • Add Makefile standard validator part of github validation so our code follow same guidlines
  • GitHub built-in AI reviews: Document how contributors can enable it, or integrate it as an optional reviewer in the workflow. Keep it opt-in and make sure it doesn’t block human review queues.
  • Copilot question integration (i.e. such as ability to call /copilot action something within a PR): Evaluate what tvheadend did—maybe add a GH Issue/PR template section with a Copilot prompt or embed slash-commands. Focus on optional usage so we don’t disrupt existing flow. (Framework: Add AI assistant documentation for GitHub Copilot and coding agents #6896)
  • Package auto-updates: Allow package update auto-PR (semver monitors, GitHub release polling, etc.). Even a first-pass script that flags outdated versions would be a huge productivity boost.

CMake

  • remove legacy non-toolchain type build functionality
  • remove RUN_CMAKE as no longer necessary (synocli-devel updates and republish for x25 nas #6877)
  • find a way to avoid environment variable to leak in spksrc.depend.mk (theory: load minimal env early, specifc after dependencies) - ref. comment framework: Add CC/CXX and other build tools as Make variables in tc_flags #6908 (comment)
  • fix duplicate rpath by removing set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
  • Rename CMAKE_ARGS in favor of CONFIGURE_ARGS like meson and autotools
  • Re-design the duplicate variable and workflow between spksrc.tc.mk and spksrc.cross-env.mk (namely TC_LOCAL_VARS_MK vs TC_VARS_MK)
  • Don't rebuild $(WORK_DIR)/tc_vars.* at every dependency (although that's usefull for kernel modules)

Meson

autotools

  • Use LIBRARY_PATH and avoid -L flags in LDFLAGS (although keep for non GNU_CONFIGURE manual type builds)

media

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions