Nantes Université

Skip to content
Extraits de code Groupes Projets
  • Cleber Rosa's avatar
    a15737b6
    GNU/Linux build improvements (#20) · a15737b6
    Cleber Rosa a rédigé
    
    * Makefile: add clean target
    
    While working on pict, it's useful to get a clean state.  This clean
    target removes the target binary and output generated by a self test
    execution (make test).
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: allow parallelization of build
    
    The current rule for building pict is based on a single command
    execution, which makes faster builds leveraging parallel execution
    impossible.
    
    This change introduces the objects that are required to build pict,
    and relies on implicit rules to turn the ".cpp" files into the object
    files.
    
    After these changes, a command such as "make -j8" shows the benefits
    of this change.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * api/pictapi.h: use default calling convention when using gcc
    
    gcc doesn't understand the __stdcall calling convention.  Let's
    use its default when using it as a compiler.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: relax a bit more the compiler options
    
    I reckon that pict should be compiled with all warnings enabled,
    and all warnings being treated as errors.  This is actually the goal
    of other changes to be proposed soon.
    
    For now, some code, such as naming attributes with the same name as
    previously declared types is not really welcomed by some compilers
    such as GCC, being considered "nonconformant code".
    
    Since changes to fix this would bring changes to the pict API, let's
    keep things simple and simply allow the unchanged code to build on
    other compilers such as GCC.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: use default compiler set on system
    
    Users can choose selected compiler by setting the "CXX" environment
    variable or by editting the Makefile.
    
    Let's not hardcode a particular compiler, now that both clang and gcc
    can be used to compile pict.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: make test depend on target being built
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: add source target
    
    It's useful to generate a snapshot of the current state of the GIT
    repo.  Let's add a target that generates a tarball using git-archive
    using a naming convention that makes it easy to trace to the commit
    that generated this snapshot.
    
    This format also happens to be well suitable for using the source
    tarball when packaging it in RPM format.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    a15737b6
    Historique
    GNU/Linux build improvements (#20)
    Cleber Rosa a rédigé
    
    * Makefile: add clean target
    
    While working on pict, it's useful to get a clean state.  This clean
    target removes the target binary and output generated by a self test
    execution (make test).
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: allow parallelization of build
    
    The current rule for building pict is based on a single command
    execution, which makes faster builds leveraging parallel execution
    impossible.
    
    This change introduces the objects that are required to build pict,
    and relies on implicit rules to turn the ".cpp" files into the object
    files.
    
    After these changes, a command such as "make -j8" shows the benefits
    of this change.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * api/pictapi.h: use default calling convention when using gcc
    
    gcc doesn't understand the __stdcall calling convention.  Let's
    use its default when using it as a compiler.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: relax a bit more the compiler options
    
    I reckon that pict should be compiled with all warnings enabled,
    and all warnings being treated as errors.  This is actually the goal
    of other changes to be proposed soon.
    
    For now, some code, such as naming attributes with the same name as
    previously declared types is not really welcomed by some compilers
    such as GCC, being considered "nonconformant code".
    
    Since changes to fix this would bring changes to the pict API, let's
    keep things simple and simply allow the unchanged code to build on
    other compilers such as GCC.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: use default compiler set on system
    
    Users can choose selected compiler by setting the "CXX" environment
    variable or by editting the Makefile.
    
    Let's not hardcode a particular compiler, now that both clang and gcc
    can be used to compile pict.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: make test depend on target being built
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    
    * Makefile: add source target
    
    It's useful to generate a snapshot of the current state of the GIT
    repo.  Let's add a target that generates a tarball using git-archive
    using a naming convention that makes it easy to trace to the commit
    that generated this snapshot.
    
    This format also happens to be well suitable for using the source
    tarball when packaging it in RPM format.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
Makefile 1,02 Kio