On Thu, Feb 4, 2021 at 9:58 AM Neal Gompa <ngompa13@gmail.com> wrote:
On Thu, Feb 4, 2021 at 9:48 AM Richard Shaw <hobbes1069@gmail.com> wrote:
>
> Currently if in source builds are set to true, %cmake_install appends a "." current directory.
>
> I'm working on building Avidemux on RPM Fusion and it requires multiple cmake builds and fakeroot installs which means I have to allow "in source builds" to stop the new behavior even though I'm manually performing multiple out-of-source builds.
>
> During %install I would much prefer to do something likes:
> %cmake_install <dir1>
> %cmake_install <dir2>
> %cmake_install <dir3>...
>
> But that's currently not possible because it assumes "." is appropriate. I'd really rather not have to pushd into each directory as that's just ugly :)
>
> Is there a way to modify the behavior of the macro to not append "."?
>

You could possibly change %_vpath_builddir for each of them. You can
do that for each %cmake, %cmake_build, and %cmake_install invocation
without turning off out of source builds.

For now I reverted back to %make_install using -C <dir> with the caveat that if %cmake_... changes to Ninja it will break. 

I don't suppose the macro could be made to have optional arguments?

Pseudo-code:
if $arg; use as <dir>; otherwise use "."

Thanks,
Richard