Closed eguiraud closed 2 weeks ago
Hi, little ping on this, it would be a big quality of life improvement for me :)
This is a very low-hanging fruit, no? The directory build
is not so populated anyway:
build
├── CMakeLists.txt
├── gdbPrinters
│ ├── libCore.so-gdb.py
│ └── libRooFitCore.so-gdb.py
├── misc
│ └── argparse2help.py
├── rmkdepend
│ ├── cppsetup.c
│ ├── def.h
│ ├── ifparser.c
│ ├── ifparser.h
│ ├── imakemdep.h
│ ├── include.c
│ ├── main.c
│ ├── mainroot.cxx
│ ├── parse.c
│ └── pr.c
├── unix
│ ├── check_dups_in_pcms.py
│ ├── compiledata.sh
│ ├── makedistsrc.sh
│ ├── makepchinput.py
│ ├── makereleasenotes.sh
│ ├── module.modulemap
│ ├── pandoc-jira.sh
│ └── rootmapcat.py
└── win
├── bindexplib
│ └── bindexplib.cxx
├── cl.sh
├── f77.sh
├── ld.sh
├── makelib.sh
├── makeresource.sh
├── sehmap.h
└── w32pragma.h
7 directories, 30 files
Alternative name suggestions:
buildtools
tools
misc
_build
utils
buildutils
Personally I would go for utils
, because it mimics also a bit what LLVM does (see interpreter/llvm-project/llvm/utils
).
I would really like if we can do something about this, as also nixpkgs
uses by default the build
directory in the sources for building :slightly_smiling_face:
Does anyone have feedback on my suggestion?
We also already have a misc
directory. The content of build is a mix of things that would belong there and things that are using during the build (and things that are seemingly not used (argparse2help?)).
So the content could also be dispersed between misc
and cmake
Following #16245, most of the build
directory was moved out. Some are still left (looks like mostly items that could move to cmake
directory)
@pcanal, thanks for re-opening, GitHub automatically closed it because of the associated PR!
This is the list of files that is still left:
build
├── CMakeLists.txt
├── unix
│ ├── check_dups_in_pcms.py
│ ├── compiledata.sh
│ ├── makedistsrc.sh
│ ├── makepchinput.py
│ ├── makereleasenotes.sh
│ ├── module.modulemap
│ ├── pandoc-jira.sh
│ └── rootmapcat.py
└── win
├── bindexplib
│ └── bindexplib.cxx
├── cl.sh
├── f77.sh
├── ld.sh
├── makelib.sh
├── makeresource.sh
├── sehmap.h
└── w32pragma.h
4 directories, 17 files
What is left now:
build
└── unix
├── check_dups_in_pcms.py
├── compiledata.sh
├── makedistsrc.sh
├── makepchinput.py
├── makereleasenotes.sh
├── module.modulemap
├── pandoc-jira.sh
└── rootmapcat.py
2 directories, 8 files
Explain what you would like to see improved
This would make it possible to use
build
as a build directory name under the source directory. Having a build directory under the source directory is common practice: several code editors do it by default, and it helps tools like ccache recognize when the same software is built multiple times (see ccache'sbase_dir
feature).There is a precedent in roottest in reserving
build
in.gitignore
, and some C++ project layout guidelines such as pitchfork suggest the usage of build as a reserved, preferred name for build directories. Other precedents are entries such ascmake-build
and.build
in ROOT's.gitignore
, with the exact same rationale, because those are the build directory names that CLion and VSCode pick.Our current
build
directory should therefore be renamed andbuild
should be added to our .gitignore.An alternative considered was
_build
, but Axel suggested to use the more properbuild
, at the cost of renaming the already existing directory: see https://github.com/root-project/root/pull/8009 .