POV-Ray : Newsgroups : povray.programming : Interested in CMake support (build system, IDE integration) Server Time
19 Apr 2024 11:12:10 EDT (-0400)
  Interested in CMake support (build system, IDE integration) (Message 16 to 25 of 25)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: clipka
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 24 May 2014 13:57:09
Message: <5380dd75$1@news.povray.org>
Am 08.03.2014 20:09, schrieb Nicolas Alvarez:
> Le_Forgeron wrote:
>> Le 07/03/2014 22:40, Nicolas Alvarez nous fit lire :
>>> I'm looking into writing a CMake build system too. I'm not really using
>>> your effort as a base, but considering your list of TODOs it would need
>>> almost a rewrite anyway. For example, I'm starting straight away with an
>>> explicit list of sources instead of globs :)
>>>
>> So, whenever adding a new source file, you also have to know about that
>> list ? What about the dependencies ? Do you use a Chinese army approach ?
>
> When you add a new source file, you need to modify the build system. I don't
> see how that's surprising.

FYI, the current Automake build system does /not/ need any modifications 
upon addition of a new source file. It simply builds all source files in 
a given set of directories.


Post a reply to this message

From: LanuHum
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 9 Oct 2016 06:00:00
Message: <web.57fa13dbdc6ec2767a3e03fe0@news.povray.org>
In his project, I want to use the Povray. I can not study very long
configuration files.
I decided to use CMake.
To build the project in Linux, I wrote a single file CMakeLists.txt

cmake_minimum_required(VERSION 2.8)

project(povanim)


set(CMAKE_CXX_FLAGS "-std=c++11 -pipe -Wno-multichar -Wno-write-strings
-fno-enforce-eh-specs -Wno-non-template-friend -s -O3 -ffast-math -march=native
-pthread")


set( SOURCE_ROOT                    source )
set( SOURCE_BASKEND                 source/backend )
set( SOURCE_BASKEND_BOUNDING        source/backend/bounding )
set( SOURCE_BASKEND_CONTROL         source/backend/control )
set( SOURCE_BASKEND_LIGHTING        source/backend/lighting )
set( SOURCE_BASKEND_RENDER          source/backend/render )
set( SOURCE_BASKEND_SCENE           source/backend/scene )
set( SOURCE_BASKEND_SUPPORT         source/backend/support )
set( SOURCE_BASE                    source/base )
set( SOURCE_BASE_ANIMATION          source/base/animation )
set( SOURCE_BASE_FONT               source/base/font )
set( SOURCE_BASE_IMAGE              source/base/image )
set( SOURCE_CORE                    source/core )
set( SOURCE_CORE_BOUNDING           source/core/bounding )
set( SOURCE_CORE_COLOUR             source/core/colour )
set( SOURCE_CORE_LIGHTING           source/core/lighting )
set( SOURCE_CORE_MATERIAL           source/core/material )
set( SOURCE_CORE_MATH               source/core/math )
set( SOURCE_CORE_RENDER             source/core/render )
set( SOURCE_CORE_SCENE              source/core/scene )
set( SOURCE_CORE_SHAPE              source/core/shape )
set( SOURCE_CORE_SUPPORT            source/core/support )
set( SOURCE_FRONTEND                source/frontend )
set( SOURCE_PARSER                  source/parser )
set( SOURCE_POVMS                   source/povms )
set( SOURCE_VM                      source/vm )
set( SOURCE_UNIX                    unix )
set( SOURCE_PLATFORM_UNIX           platform/unix )
set( SOURCE_PLATFORM_X86            platform/x86)
set( SOURCE_VFE                     vfe )
set( SOURCE_VFE_UNIX                vfe/unix)


aux_source_directory( ${SOURCE_ROOT}                     SOURCEROOT )
aux_source_directory( ${SOURCE_BASKEND}                  SOURCEBASKEND )
aux_source_directory( ${SOURCE_BASKEND_BOUNDING}         SOURCEBASKENDBOUNDING )
aux_source_directory( ${SOURCE_BASKEND_CONTROL}          SOURCEBASKENDCONTROL )
aux_source_directory( ${SOURCE_BASKEND_LIGHTING}         SOURCEBASKENDLIGHTING )
aux_source_directory( ${SOURCE_BASKEND_RENDER}           SOURCEBASKENDRENDER )
aux_source_directory( ${SOURCE_BASKEND_SCENE}            SOURCEBASKENDSCENE )
aux_source_directory( ${SOURCE_BASKEND_SUPPORT}          SOURCEBASKENDSUPPORT )
aux_source_directory( ${SOURCE_BASE}                     SOURCEBASE )
aux_source_directory( ${SOURCE_BASE_ANIMATION}           SOURCEBASEANIMATION )
aux_source_directory( ${SOURCE_BASE_FONT}                SOURCEBASEFONT )
aux_source_directory( ${SOURCE_BASE_IMAGE}               SOURCEBASEIMAGE )
aux_source_directory( ${SOURCE_CORE}                     SOURCECORE )
aux_source_directory( ${SOURCE_CORE_BOUNDING}            SOURCECOREBOUNDING )
aux_source_directory( ${SOURCE_CORE_COLOUR}              SOURCECORECOLOUR )
aux_source_directory( ${SOURCE_CORE_LIGHTING}            SOURCECORELIGHTING )
aux_source_directory( ${SOURCE_CORE_MATERIAL}            SOURCECOREMATERIAL )
aux_source_directory( ${SOURCE_CORE_MATH}                SOURCECOREMATH )
aux_source_directory( ${SOURCE_CORE_RENDER}              SOURCECORERENDER )
aux_source_directory( ${SOURCE_CORE_SCENE}               SOURCECORESCENE )
aux_source_directory( ${SOURCE_CORE_SHAPE}               SOURCECORESHAPE )
aux_source_directory( ${SOURCE_CORE_SUPPORT}             SOURCECORESUPPORT )
aux_source_directory( ${SOURCE_FRONTEND}                 SOURCEFRONTEND )
aux_source_directory( ${SOURCE_PARSER}                   SOURCEPARSER )
aux_source_directory( ${SOURCE_POVMS}                    SOURCEPOVMS )
aux_source_directory( ${SOURCE_VM}                       SOURCEVM )
aux_source_directory( ${SOURCE_UNIX}                     SOURCEUNIX )
aux_source_directory( ${SOURCE_PLATFORM_UNIX}            SOURCEPLATFORMUNIX )
aux_source_directory( ${SOURCE_PLATFORM_X86}             SOURCEPLATFORMX86 )
aux_source_directory( ${SOURCE_VFE}                      SOURCEVFE )
aux_source_directory( ${SOURCE_VFE_UNIX}                 SOURCEVFEUNIX )

find_package(           JPEG REQUIRED)
find_package(           PNG REQUIRED)
find_package(           PkgConfig REQUIRED)

pkg_search_module(      SDL REQUIRED sdl)

set( UNIX_POVCONFIG_INCLUDE_DIR unix/povconfig)

include_directories(    ${SOURCE_ROOT}
                        ${SOURCE_BASKEND}
                        ${SOURCE_BASE}
                        ${SOURCE_CORE}
                        ${SOURCE_FRONTEND}
                        ${SOURCE_PARSER}
                        ${SOURCE_POVMS}
                        ${SOURCE_VM}
                        ${SOURCE_UNIX}
                        ${UNIX_POVCONFIG_INCLUDE_DIR}
                        ${SOURCE_PLATFORM_UNIX}
                        ${SOURCE_PLATFORM_X86}
                        ${SOURCE_VFE}
                        ${SOURCE_VFE_UNIX}
                        ${SDL_INCLUDE_DIRS}
                        ${JPEG_INCLUDE_DIRS}
                        ${PNG_INCLUDE_DIRS}
                        )

add_executable(         ${PROJECT_NAME}
                        ${SOURCEROOT}
                        ${SOURCEBASKEND}
                        ${SOURCEBASKENDBOUNDING}
                        ${SOURCEBASKENDCONTROL}
                        ${SOURCEBASKENDLIGHTING}
                        ${SOURCEBASKENDRENDER}
                        ${SOURCEBASKENDSCENE}
                        ${SOURCEBASKENDSUPPORT}
                        ${SOURCEBASE}
                        ${SOURCEBASEANIMATION}
                        ${SOURCEBASEFONT}
                        ${SOURCEBASEIMAGE}
                        ${SOURCECORE}
                        ${SOURCECOREBOUNDING}
                        ${SOURCECORECOLOUR}
                        ${SOURCECORELIGHTING}
                        ${SOURCECOREMATERIAL}
                        ${SOURCECOREMATH}
                        ${SOURCECORERENDER}
                        ${SOURCECORESCENE}
                        ${SOURCECORESHAPE}
                        ${SOURCECORESUPPORT}
                        ${SOURCEFRONTEND}
                        ${SOURCEPARSER}
                        ${SOURCEPOVMS}
                        ${SOURCEVM}
                        ${SOURCEUNIX}
                        ${SOURCEPLATFORMUNIX}
                        ${SOURCEPLATFORMX86}
                        ${SOURCEVFE}
                        ${SOURCEVFEUNIX}
                        )


target_link_libraries(  ${PROJECT_NAME}
                        ${SDL_LIBRARIES}
                        ${JPEG_LIBRARIES}
                        )

Not all external library I added, but JPEG FOUND

leonid@lanucomp ~/workspace/programming/povray_animator/povray $ LC_ALL=C make
Scanning dependencies of target povanim
[  0%] Building CXX object CMakeFiles/povanim.dir/source/pov_mem.cpp.o
[  1%] Building CXX object CMakeFiles/povanim.dir/source/povmain.cpp.o
[  1%] Building CXX object CMakeFiles/povanim.dir/source/backend/povray.cpp.o
/home/leonid/workspace/programming/povray_animator/povray-master/source/backend/povray.cpp:69:30:
fatal error: jversion.h: No such file or directory
         #include <jversion.h>
                              ^
compilation terminated.
CMakeFiles/povanim.dir/build.make:110: recipe for target
'CMakeFiles/povanim.dir/source/backend/povray.cpp.o' failed
make[2]: *** [CMakeFiles/povanim.dir/source/backend/povray.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/povanim.dir/all' failed
make[1]: *** [CMakeFiles/povanim.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
leonid@lanucomp ~/workspace/programming/povray_animator/povray $

In file povray.cpp:
    #ifndef LIBJPEG_MISSING
        #include <jversion.h>
    #endif

Povray does not use an external library libjpeg????
jpeg-devel package has only these files:
   /usr/include/jconfig.h
   /usr/include/jerror.h
   /usr/include/jmorecfg.h
   /usr/include/jpegint.h
   /usr/include/jpeglib.h
   /usr/include/turbojpeg.h
   /usr/lib64/libjpeg.so
   /usr/lib64/libturbojpeg.so


Post a reply to this message

From: LanuHum
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 9 Oct 2016 09:30:00
Message: <web.57fa4591dc6ec2767a3e03fe0@news.povray.org>
All very good. :)

leonid@lanucomp ~/workspace/programming/povray_animator/povray $ LC_ALL=C make
-j4
Scanning dependencies of target povray
[  0%] Building CXX object CMakeFiles/povanim.dir/source/pov_mem.cpp.o
.....
.....
[ 99%] Building CXX object CMakeFiles/povanim.dir/vfe/unix/vfeplatform.cpp.o
[100%] Linking CXX executable povray
[100%] Built target povray
leonid@lanucomp ~/workspace/programming/povray_animator/povray $


Post a reply to this message

From: clipka
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 9 Oct 2016 14:56:03
Message: <57fa92c3$1@news.povray.org>
Am 09.10.2016 um 11:57 schrieb LanuHum:

> To build the project in Linux, I wrote a single file CMakeLists.txt
...

> set( SOURCE_ROOT                    source )
> set( SOURCE_BASKEND                 source/backend )
> set( SOURCE_BASKEND_BOUNDING        source/backend/bounding )
> set( SOURCE_BASKEND_CONTROL         source/backend/control )
> set( SOURCE_BASKEND_LIGHTING        source/backend/lighting )
> set( SOURCE_BASKEND_RENDER          source/backend/render )
> set( SOURCE_BASKEND_SCENE           source/backend/scene )
> set( SOURCE_BASKEND_SUPPORT         source/backend/support )
...
Isn't that overly verbose? Can't CMake build the contents of an entire
directory tree recursively?

(I guess for your own project you're probably ok with this for now, but
I'm also interested in exploring the potential of CMake for official
POV-Ray, so since you're toying around with CMake anyway, I'd be
grateful if you could investigate a bit further in that direction.)


> fatal error: jversion.h: No such file or directory
>          #include <jversion.h>
...
> Povray does not use an external library libjpeg????
> jpeg-devel package has only these files:
>    /usr/include/jconfig.h
>    /usr/include/jerror.h
>    /usr/include/jmorecfg.h
>    /usr/include/jpegint.h
>    /usr/include/jpeglib.h
>    /usr/include/turbojpeg.h
>    /usr/lib64/libjpeg.so
>    /usr/lib64/libturbojpeg.so

Historically, POV-Ray has been using the contents of `jversion.h` to
determine the version of libjpeg it reports to the end user in the list
of library copyright notices.

This works fine with the Windows version, since it is linked to the
version of libjpeg we're distributing in source code format along with
the POV-Ray for Windows source code; but as you have noticed correctly,
the file is typically unavailable for Unix builds as our Unix build
process nowadays always relies on an external libjpeg (disabling JPEG if
such an external library is unavailable).

In our automake-based Unix build process, this has been worked around by
faking the file, with information obtained by the automake tools via
other means.


I had never investigated this before, but now that I've looked at it I
consider it a bug, or at least a flaw that should (and can) be fixed. I
suspect it might be some artifact from the history of libjpeg. After
all, POV-Ray is in some sense 5 years older than libjpeg, and there may
have been times when `jversion.h` used to be the only file from which
version information could be obtained.

All versions of libjpeg that POV-Ray is still compatible with appear to
provide version information in `jpeglib.h`, and I've just made sure
that's the source future versions of POV-Ray will get their version
information from.


Post a reply to this message

From: LanuHum
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 9 Oct 2016 16:50:00
Message: <web.57faac61dc6ec2767a3e03fe0@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> Am 09.10.2016 um 11:57 schrieb LanuHum:
>
> > To build the project in Linux, I wrote a single file CMakeLists.txt
> ...
>
> > set( SOURCE_ROOT                    source )
> > set( SOURCE_BASKEND                 source/backend )
> > set( SOURCE_BASKEND_BOUNDING        source/backend/bounding )
> > set( SOURCE_BASKEND_CONTROL         source/backend/control )
> > set( SOURCE_BASKEND_LIGHTING        source/backend/lighting )
> > set( SOURCE_BASKEND_RENDER          source/backend/render )
> > set( SOURCE_BASKEND_SCENE           source/backend/scene )
> > set( SOURCE_BASKEND_SUPPORT         source/backend/support )
> ...
> Isn't that overly verbose? Can't CMake build the contents of an entire
> directory tree recursively?
>
> (I guess for your own project you're probably ok with this for now, but
> I'm also interested in exploring the potential of CMake for official
> POV-Ray, so since you're toying around with CMake anyway, I'd be
> grateful if you could investigate a bit further in that direction.)
>

My problem - poor understanding of English.
No information in Russian.
Russian-speaking programmers write in English.
I hardly found aux_source_directory. :)))))
Usually written CMakeLists.txt for each directory.
But I do not think a large file.
This is much less than: configure.in, configure.ac, makefile.in, prebuild.sh,
bootstrap, makefile and so on.
Yes, I got ready config.h and the source code has disabled some functions.
I need to understand more.


Post a reply to this message

From: LanuHum
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 22 Oct 2016 06:45:00
Message: <web.580b4292dc6ec2767a3e03fe0@news.povray.org>
For example, the structure is different from the master and hgpovray.
Now I understand why stupid written configuration files gnumake.
CMakeListsGenerator.py

import os,sys

external_library = ['SDL','ILMBASE','OPENEXR','JPEG','PNG','TIFF']
pkg_modules = ['sdl','IlmBase','OpenEXR','libtiff-4']
cmake_names = ['SDL','ILMBASE','OPENEXR','TIFF']
cmake_packages = ['PkgConfig','JPEG','PNG']

cmakelist = open('CMakeLists.txt','w')
cmakelist.write('cmake_minimum_required(VERSION 2.8)\n\n')
cmakelist.write('project(povanim)\n\n')
if sys.platform in {'linux'}:
    cmakelist.write('set( CMAKE_CXX_FLAGS "-pipe -Wno-multichar \\\n')
    cmakelist.write('   -Wno-write-strings -fno-enforce-eh-specs \\\n')
    cmakelist.write('   -Wno-non-template-friend -s -O3 \\\n')
    cmakelist.write('   -ffast-math -march=native -pthread")\n\n')

sources = {}
unix_source_folders = {'source', 'platform', 'unix', 'vfe'}
win_source_folders = {'source', 'platform', 'windows', 'vfe'}
if sys.platform in {'linux'}:
    source_folders = unix_source_folders

if sys.platform[:3] == 'win':
    source_folders = win_source_folders
root_dir = os.getcwd()
root = root_dir.split('/')[-1]

prefix='POVRAY'

for folder in source_folders:
    source_key = folder.upper()
    source_key = prefix + '_' + source_key
    source_dir1 = os.path.join(root_dir,folder)
    value = source_dir1.split('/')
    plus = False
    source_value = ''
    for v in value:
        if v == root:
            plus = True
            continue
        if plus:
            source_value += v
            plus = False
    sources[source_key] = source_value
    src1 = os.listdir(source_dir1)
    for ob in src1:
        source_dir2 = os.path.join(source_dir1,ob)
        source_key1 = source_key
        if os.path.isdir(source_dir2):
            src2 = os.listdir(source_dir2)
            isCPP = False
            for ob1 in src2:
                if ob1.endswith('.cpp'):
                    isCPP = True
                    break
            if isCPP:
                source_key1 += ('_' + ob.upper())
                source_value1 = source_value
                source_value1 += ('/' + ob)
                sources[source_key1] = source_value1
                for ob1 in src2:
                    source_dir3 = os.path.join(source_dir2,ob1)
                    source_key2 = source_key1
                    if os.path.isdir(source_dir3):
                        src3 = os.listdir(source_dir3)
                        isCPP1 = False
                        for ob2 in src3:
                            if ob2.endswith('.cpp'):
                                isCPP1 = True
                                break
                        if isCPP1:
                            source_key2 += ('_' + ob1.upper())
                            source_value2 = source_value1
                            source_value2 += ('/' + ob1)
                            sources[source_key2] = source_value2
                        else:
                            continue
            else:
                continue

for i,k in enumerate(sources):
    cmakelist.write('set(%s    %s)\n'%(k,sources[k]))
cmakelist.write('\n\n')

for i,k in enumerate(sources):
    aux = k.replace('_','')
    cmakelist.write('aux_source_directory( ${%s}    %s)\n'%(k,aux))
cmakelist.write('\n\n')

for pack in cmake_packages:
    cmakelist.write('find_package(%s REQUIRED)\n'%pack)
cmakelist.write('\n\n')

for i,mod in enumerate(pkg_modules):
    cmake_name = mod.upper()
    cmakelist.write('pkg_search_module(%s REQUIRED %s)\n'%(cmake_names[i],mod))
cmakelist.write('\n\n')

cmakelist.write('include_directories(\n')
for i,k in enumerate(sources):
    aux = k.split('_')
    if len(aux) == 2:
        cmakelist.write('       ${%s}\n'%(k))
for lib in external_library:
    cmakelist.write('       ${%s_INCLUDE_DIRS}\n'%lib)
cmakelist.write(')\n')
cmakelist.write('\n\n')

cmakelist.write('add_executable(\n')
cmakelist.write('       ${PROJECT_NAME}\n')
for i,k in enumerate(sources):
    aux = k.replace('_','')
    cmakelist.write('       ${%s}\n'%(aux))
cmakelist.write(')\n')
cmakelist.write('\n\n')

cmakelist.write('target_link_libraries(\n')
cmakelist.write('       ${PROJECT_NAME}\n')

for lib in external_library:
    cmakelist.write('       ${%s_LIBRARIES}\n'%lib)
cmakelist.write('       -lz -lm boost_thread boost_system\n')
cmakelist.write(')\n')

cmakelist.close()


Post a reply to this message

From: clipka
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 22 Oct 2016 18:36:32
Message: <580be9f0$1@news.povray.org>
Am 22.10.2016 um 12:42 schrieb LanuHum:
> For example, the structure is different from the master and hgpovray.
> Now I understand why stupid written configuration files gnumake.
> CMakeListsGenerator.py

So instead of an Automake script we'd get a Python script?

I'm not sure if this is really a win -- most notably since Automake does
a lot more than just determine what files to compile and what libraries
to link, such as detecting whether particular semi-standard include
files, data types or functions are available (defining all those
HAVE_SOMETHING macros you find scattered throughout the POV-Ray source
code).


Post a reply to this message

From: LanuHum
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 23 Oct 2016 05:10:00
Message: <web.580c7dd8dc6ec2767a3e03fe0@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> Am 22.10.2016 um 12:42 schrieb LanuHum:
> > For example, the structure is different from the master and hgpovray.
> > Now I understand why stupid written configuration files gnumake.
> > CMakeListsGenerator.py
>
> So instead of an Automake script we'd get a Python script?
>
> I'm not sure if this is really a win -- most notably since Automake does
> a lot more than just determine what files to compile and what libraries
> to link, such as detecting whether particular semi-standard include
> files, data types or functions are available (defining all those
> HAVE_SOMETHING macros you find scattered throughout the POV-Ray source
> code).


I do not reinvent the wheel. I just do not know Automake, but need to build the
program. I do not know where I have to write the changes to be included in your
project my files. I found a solution to the primitive, but it works.

My posts on this thread are just an idea.
Someone might want to develop it.
The source code of the blender always had several options for building:
cmake, make and scons.
Scons uses python.


:)


Post a reply to this message

From: Mr
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 11 Jun 2020 10:55:01
Message: <web.5ee2459ddc6ec2766adeaecb0@news.povray.org>
"LanuHum" <Lan### [at] yandexru> wrote:
> clipka <ano### [at] anonymousorg> wrote:
> > Am 22.10.2016 um 12:42 schrieb LanuHum:
> > > For example, the structure is different from the master and hgpovray.
> > > Now I understand why stupid written configuration files gnumake.
> > > CMakeListsGenerator.py
> >
> > So instead of an Automake script we'd get a Python script?
> >
> > I'm not sure if this is really a win -- most notably since Automake does
> > a lot more than just determine what files to compile and what libraries
> > to link, such as detecting whether particular semi-standard include
> > files, data types or functions are available (defining all those
> > HAVE_SOMETHING macros you find scattered throughout the POV-Ray source
> > code).
>
>
> I do not reinvent the wheel. I just do not know Automake, but need to build the
> program. I do not know where I have to write the changes to be included in your
> project my files. I found a solution to the primitive, but it works.
>
> My posts on this thread are just an idea.
> Someone might want to develop it.
> The source code of the blender always had several options for building:
> cmake, make and scons.
> Scons uses python.
>
>
> :)


The first CMake repository provided by ideasman42 has been removed :-( I asked
if he had kept an archive and no he didn't ... would any compulsive downloader
have kept a version somwhere? I tried the Internet Archive to no success as
well.


Post a reply to this message

From: Thomas Debe
Subject: Re: Interested in CMake support (build system, IDE integration)
Date: 12 Jun 2020 10:46:26
Message: <5ee39542$1@news.povray.org>
Am 11.06.20 um 16:54 schrieb Mr:
> "LanuHum" <Lan### [at] yandexru> wrote:
>> clipka <ano### [at] anonymousorg> wrote:
>>> Am 22.10.2016 um 12:42 schrieb LanuHum:
>>>> For example, the structure is different from the master and hgpovray.
>>>> Now I understand why stupid written configuration files gnumake.
>>>> CMakeListsGenerator.py
>>>
>>> So instead of an Automake script we'd get a Python script?
>>>
>>> I'm not sure if this is really a win -- most notably since Automake does
>>> a lot more than just determine what files to compile and what libraries
>>> to link, such as detecting whether particular semi-standard include
>>> files, data types or functions are available (defining all those
>>> HAVE_SOMETHING macros you find scattered throughout the POV-Ray source
>>> code).
>>
>>
>> I do not reinvent the wheel. I just do not know Automake, but need to build the
>> program. I do not know where I have to write the changes to be included in your
>> project my files. I found a solution to the primitive, but it works.
>>
>> My posts on this thread are just an idea.
>> Someone might want to develop it.
>> The source code of the blender always had several options for building:
>> cmake, make and scons.
>> Scons uses python.
>>
>>
>> :)
> 
> 
> The first CMake repository provided by ideasman42 has been removed :-( I asked
> if he had kept an archive and no he didn't ... would any compulsive downloader
> have kept a version somwhere? I tried the Internet Archive to no success as
> well.
> 
> 
> 
> 
Hello !
Look at
<5ee393f7$1@news.povray.org>

povray.binaries.programming

regards
Thomas


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.