On Sun, Jul 5, 2020 at 8:20 AM Neal Gompa <ngomp...@gmail.com> wrote:

> On Sun, Jul 5, 2020 at 9:16 AM Richard Shaw <hobbes1...@gmail.com> wrote:
> >
> > I saw the change notification but didn't know it went in to
> "production". I was trying to build OpenImageIO in rawhide and it failed,
> because I was already doing an out of source build which it appended
> "%{_arch}-redhat-linux-gnu" or something like that to.
> >
> > So I looked up the guidelines for CMake which state:
> >
> > %build
> > %cmake .
> > %make_build
> >
> >
> > Oookay... Now OIIO CMake config is giving me:
> >
> > CMake Error at CMakeLists.txt:50 (message):
> >   Not allowed to run in-source build!
> >
> > And low and behold I see new options being passed to CMake...
> >
> > + /usr/bin/cmake -S . -B .
> >
> > Which point the source and binary locations to the same directory.
> >
> > So I was all for the change other than the fact I was already doing
> out-of-source builds for all of the CMake packages I maintain, which this
> breaks, and right now the "automagic" seems to be broken as well.
> >
>
> Temporarily, we have %__cmake_in_source_build set, which forces back
> the legacy behavior. You can switch to the upcoming out of source
> default by adding the following to the top of your spec:
>
> # Force out of source build
> %undefine __cmake_in_source_build
>
> With that, you can use %cmake with no arguments and everything should work
> fine.


Well, both ways seem to be broken now. If I use the out-of-source build,
cmake works fine but apparently %make_build doesn't auto-change to the
generated directory. Am I expected to know the direcotory pattern and
handle it myself? If so this seems like a major step backwards.

If I allow in source builds it adds the "-S . -B ." and even though I make
my own directory and point back to it "%cmake ... ../" it still fails the
projects in source build check:

 + /usr/bin/cmake -S . -B . -DCMAKE_C_FLAGS_RELEASE:STRING=-DNDEBUG
-DCMAKE_CXX_FLAGS_RELEASE:STRING=-DNDEBUG
-DCMAKE_Fortran_FLAGS_RELEASE:STRING=-DNDEBUG
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr
-DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64
-DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share
-DLIB_SUFFIX=64 -DBUILD_SHARED_LIBS:BOOL=ON
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_SKIP_RPATH:BOOL=TRUE
-DPYTHON_VERSION=3.9 -DBUILD_DOCS:BOOL=TRUE -DINSTALL_DOCS:BOOL=FALSE
-DINSTALL_FONTS:BOOL=FALSE -DUSE_EXTERNAL_PUGIXML:BOOL=TRUE
-DSTOP_ON_WARNING:BOOL=FALSE -DJPEG_INCLUDE_DIR=/usr/include
-DOPENJPEG_INCLUDE_DIR=/usr/include/openjpeg-2.3
-DOpenGL_GL_PREFERENCE=GLVND -DVERBOSE=TRUE ../
-- The CXX compiler identification is GNU 10.1.1
-- The C compiler identification is GNU 10.1.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Building OpenImageIO 2.1.17.0
-- CMake version is 3.18.0-rc3
-- Configuring OpenImageIO 2.1.17.0
-- CMake 3.18.0-rc3
-- CMake system           = Linux-5.6.19-300.fc32.x86_64
-- CMake system name      = Linux
-- Project source dir     = /builddir/build/BUILD/oiio-Release-2.1.17.0
-- Project build dir      = /builddir/build/BUILD/oiio-Release-2.1.17.0
-- Project install prefix = /usr
-- Configuration types    =
-- Build type             = RelWithDebInfo
CMake Error at CMakeLists.txt:50 (message):
  Not allowed to run in-source build!

Thanks,
Richard
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to