Skip to content

Commit cdbfbce

Browse files
committed
Merge branch 'master' of github.com:qgis/Quantum-GIS
2 parents 0e12034 + edad445 commit cdbfbce

File tree

518 files changed

+928
-1410
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

518 files changed

+928
-1410
lines changed

CMakeLists.txt

+14-30
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,6 @@ ENDIF (APPLE)
1515
MATH(EXPR QGIS_VERSION_INT "${CPACK_PACKAGE_VERSION_MAJOR}*10000+${CPACK_PACKAGE_VERSION_MINOR}*100+${CPACK_PACKAGE_VERSION_PATCH}")
1616
MESSAGE(STATUS "Quantum GIS version: ${COMPLETE_VERSION} ${RELEASE_NAME} (${QGIS_VERSION_INT})")
1717

18-
# TODO:
19-
# - install includes for libs
20-
# - nice output when configured
21-
# - rename *.ui files to have the same filename as their implementation
22-
# e.g. instead of blahblahbase.ui use blahblah.ui
23-
# because it's more common in Qt4
24-
# Note on last point above by Tim Sutton - I prefer to have the base suffix
25-
# as it indicates the ui generated class will be a base class for the widget.
26-
2718
#############################################################
2819
# CMake settings
2920

@@ -37,16 +28,10 @@ SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
3728

3829
# in generated makefiles use relative paths so the project dir is moveable
3930
# Note commented out since it cause problems but it would be nice to resolve these and enable
40-
#
41-
# issue is caused by INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) near the end of this file generating incorrect path
31+
#
32+
# issue is caused by INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) near the end of this file generating incorrect path
4233
#SET (CMAKE_USE_RELATIVE_PATHS ON)
4334

44-
# it's possible to set PLUGINS_ALSO_BINARIES to TRUE
45-
# then some plugins that can run as standalone apps will be built
46-
# also as standalone apps
47-
SET (PLUGINS_ALSO_BINARIES FALSE)
48-
49-
5035
# try to configure and build GRASS plugin by default
5136
SET (WITH_GRASS TRUE CACHE BOOL "Determines whether GRASS plugin should be built")
5237
IF (WITH_GRASS)
@@ -57,9 +42,6 @@ ENDIF (WITH_GRASS)
5742
# mapserver by us disabled default because it needs FastCGI (which is optional dependency)
5843
SET (WITH_MAPSERVER FALSE CACHE BOOL "Determines whether QGIS mapserver should be built")
5944

60-
# include doxygen documentation
61-
SET (WITH_APIDOC FALSE CACHE BOOL "Determines whether the QGIS API doxygen documentation should be built")
62-
6345
# build our version of astyle
6446
SET (WITH_ASTYLE FALSE CACHE BOOL "If you plan to contribute you should reindent with scripts/prepare-commit.sh (using 'our' astyle)")
6547

@@ -256,23 +238,21 @@ IF (WIN32)
256238
SET (DEFAULT_DATA_SUBDIR .)
257239
SET (DEFAULT_PLUGIN_SUBDIR plugins)
258240
SET (DEFAULT_INCLUDE_SUBDIR include)
259-
241+
260242
IF (MSVC)
261243
SET (DEFAULT_BIN_SUBDIR bin)
262244
SET (DEFAULT_CGIBIN_SUBDIR bin)
263245
# put all the build products into a single directory
264246
# under build (doesnt affect install target) to make for
265247
# easier debugging.
266-
#tell msvc compiler to use main instead of winmain as the
267-
#application entry point
268-
#SET(QT_USE_QTMAIN TRUE)
248+
269249
# Turn on defines for non standard maths stuff
270250
ADD_DEFINITIONS(-D_USE_MATH_DEFINES)
271251

272252
# Turn off deprecation warnings
273253
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)
274254
ADD_DEFINITIONS(-D_CRT_NONSTDC_NO_WARNINGS)
275-
255+
276256
IF (CMAKE_BUILD_TYPE MATCHES Debug OR CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
277257
MESSAGE (STATUS "Generating browse files")
278258
ADD_DEFINITIONS( /FR )
@@ -340,7 +320,7 @@ ENDIF (WIN32)
340320

341321
#assume we have escaped compiler directives
342322
#eventually we want to change this to new
343-
#since we don't need to jump through so many
323+
#since we don't need to jump through so many
344324
#hoops to escape compiler directives then
345325
IF(COMMAND cmake_policy)
346326
cmake_policy(SET CMP0003 NEW)
@@ -467,23 +447,27 @@ ADD_CUSTOM_TARGET(version ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h)
467447
#############################################################
468448
# process subdirs
469449

470-
SUBDIRS(src doc images resources i18n)
450+
ADD_SUBDIRECTORY(src)
451+
ADD_SUBDIRECTORY(doc)
452+
ADD_SUBDIRECTORY(images)
453+
ADD_SUBDIRECTORY(resources)
454+
ADD_SUBDIRECTORY(i18n)
471455

472456
IF (WITH_BINDINGS)
473-
SUBDIRS (python)
457+
ADD_SUBDIRECTORY(python)
474458
ENDIF (WITH_BINDINGS)
475459

476460
IF (ENABLE_TESTS)
477461
#create a variable to specify where our test data is
478462
#so that unit tests can use TEST_DATA_DIR to locate
479463
#the test data. See CMakeLists in test dirs for more info
480464
SET (TEST_DATA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tests/testdata")
481-
SUBDIRS(tests)
465+
ADD_SUBDIRECTORY(tests)
482466
ENDIF (ENABLE_TESTS)
483467

484468
IF (APPLE)
485469
# must be last for install, so install_name_tool can do its work
486-
SUBDIRS (mac)
470+
ADD_SUBDIRECTORY(mac)
487471
ENDIF (APPLE)
488472

489473
# manual page - makes sense only on unix systems

CODING

+70-27
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,23 @@ Developers guide for QGIS
3434
1.9.5. Use Braces Even for Single Line Statements
3535
1.9.6. Book recommendations
3636
2. GIT Access
37-
2.1. Accessing the Repository
38-
2.2. Check out a branch
39-
2.3. QGIS documentation sources
40-
2.4. GIT Documentation
41-
2.5. Development in branches
42-
2.5.1. Purpose
43-
2.5.2. Procedure
44-
2.6. Submitting Patches
45-
2.6.1. Patch file naming
46-
2.6.2. Create your patch in the top level QGIS source dir
47-
2.6.3. Getting your patch noticed
48-
2.6.4. Due Diligence
49-
2.7. Obtaining GIT Write Access
37+
2.1. Installation
38+
2.1.1. Install git for GNU/Linux
39+
2.1.2. Install git for Windows
40+
2.1.3. Install git for OSX
41+
2.2. Accessing the Repository
42+
2.3. Check out a branch
43+
2.4. QGIS documentation sources
44+
2.5. GIT Documentation
45+
2.6. Development in branches
46+
2.6.1. Purpose
47+
2.6.2. Procedure
48+
2.7. Submitting Patches
49+
2.7.1. Patch file naming
50+
2.7.2. Create your patch in the top level QGIS source dir
51+
2.7.3. Getting your patch noticed
52+
2.7.4. Due Diligence
53+
2.8. Obtaining GIT Write Access
5054
3. Unit Testing
5155
3.1. The QGIS testing framework - an overview
5256
3.2. Creating a unit test
@@ -415,22 +419,61 @@ http://doc.trolltech.com/qq/qq13-apis.html designing Qt style (APIs)
415419
2. GIT Access
416420
=============
417421

418-
This section describes how to get started using the QGIS GIT repository. Before you can do this, you need to first have a git client installed on your system. Debian based distro users can do:
422+
This section describes how to get started using the QGIS GIT repository. Before you can do this, you need to first have a git client installed on your system.
423+
424+
425+
2.1. Installation
426+
=================
427+
428+
429+
2.1.1. Install git for GNU/Linux
430+
================================
431+
432+
Debian based distro users can do:
419433

420434
sudo apt-get install git
421435

436+
437+
2.1.2. Install git for Windows
438+
==============================
439+
422440
Windows users can obtain msys git (http://code.google.com/p/msysgit/).
423441

424442

425-
2.1. Accessing the Repository
443+
2.1.3. Install git for OSX
444+
==========================
445+
446+
The git (http://git-scm.com/) project has a downloadable build of git.
447+
Make sure to get the package matching your processor (x86_64 most likely, only the first Intel Macs need the i386 package).
448+
449+
Once downloaded open the disk image and run the installer.
450+
451+
PPC/source note
452+
453+
The git site does not offer PPC builds. If you need a PPC build, or you just want
454+
a little more control over the installation, you need to compile it yourself.
455+
456+
Download the source from http://git-scm.com/. Unzip it, and in a Terminal cd to the source folder, then:
457+
458+
make prefix=/usr/local
459+
sudo make prefix=/usr/local install
460+
461+
If you don't need any of the extras, Perl, Python or TclTk (GUI), you can disable them before running make with:
462+
463+
export NO_PERL=
464+
export NO_TCLTK=
465+
export NO_PYTHON=
466+
467+
468+
2.2. Accessing the Repository
426469
=============================
427470

428471
To clone QGIS master:
429472

430473
git://github.com/qgis/Quantum-GIS.git
431474

432475

433-
2.2. Check out a branch
476+
2.3. Check out a branch
434477
=======================
435478

436479
To check out a branch, for example the release 1.7.0 branch do:
@@ -455,7 +498,7 @@ See the INSTALL file in the source tree for specific instructions on building
455498
development versions.
456499

457500

458-
2.3. QGIS documentation sources
501+
2.4. QGIS documentation sources
459502
===============================
460503

461504
If you're interested in checking out Quantum GIS documentation sources:
@@ -467,7 +510,7 @@ If you're interested in checking out Quantum GIS documentation sources:
467510
You can also take a look at DocumentationWritersCorner for more information.
468511

469512

470-
2.4. GIT Documentation
513+
2.5. GIT Documentation
471514
======================
472515

473516
See the following sites for information on becoming a GIT master.
@@ -477,11 +520,11 @@ http://progit.org
477520
http://gitready.com
478521

479522

480-
2.5. Development in branches
523+
2.6. Development in branches
481524
============================
482525

483526

484-
2.5.1. Purpose
527+
2.6.1. Purpose
485528
==============
486529

487530
The complexity of the QGIS source code has increased considerably during the
@@ -495,7 +538,7 @@ This section describes the procedure for branching and merging in the QGIS
495538
project.
496539

497540

498-
2.5.2. Procedure
541+
2.6.2. Procedure
499542
================
500543

501544
- Initial announcement on mailing list:
@@ -541,14 +584,14 @@ Component will be opened to file tickets against. Once there are no remaining
541584
issues left, the technical advisor of the PSC merges the changes into master.
542585

543586

544-
2.6. Submitting Patches
587+
2.7. Submitting Patches
545588
=======================
546589

547590
There are a few guidelines that will help you to get your patches into QGIS
548591
easily, and help us deal with the patches that are sent to use easily.
549592

550593

551-
2.6.1. Patch file naming
594+
2.7.1. Patch file naming
552595
========================
553596

554597
If the patch is a fix for a specific bug, please name the file with the bug
@@ -559,7 +602,7 @@ If the bug is an enhancement or new feature, its usually a good idea to create
559602
a ticket in trac (https://trac.osgeo.org/qgis/) first and then attach you
560603

561604

562-
2.6.2. Create your patch in the top level QGIS source dir
605+
2.7.2. Create your patch in the top level QGIS source dir
563606
=========================================================
564607

565608
This makes it easier for us to apply the patches since we don't need to
@@ -580,7 +623,7 @@ and then generate a patch which contains the delta between your feature branch
580623
and what is in the master branch.
581624

582625

583-
2.6.3. Getting your patch noticed
626+
2.7.3. Getting your patch noticed
584627
=================================
585628

586629
QGIS developers are busy folk. We do scan the incoming patches on bug reports
@@ -591,7 +634,7 @@ can escalate your query to one of the Project Steering Committee members
591634
(contact details also available on the Project Organigram).
592635

593636

594-
2.6.4. Due Diligence
637+
2.7.4. Due Diligence
595638
====================
596639

597640
QGIS is licensed under the GPL. You should make every effort to ensure you only
@@ -600,7 +643,7 @@ rights. Also do not submit code that you are not happy to have made available
600643
under the GPL.
601644

602645

603-
2.7. Obtaining GIT Write Access
646+
2.8. Obtaining GIT Write Access
604647
===============================
605648

606649
Write access to QGIS source tree is by invitation. Typically when a person

0 commit comments

Comments
 (0)