| Age | Commit message (Collapse) | Author |
|
|
|
With projects.h not being available to outside users anymore we need to
define PJ_UNITS, PJ_ELLPS, PJ_PRIME_MERIDIANS and PJ_OPERATIONS
elsewhere.
Related pj_get_*_ref() functions have been removed in favour
of their proj_ namespaced counterparts.
char pointers have been changed to const char pointers.
Resolves #983
Resolved #1147
Make char pointers const
|
|
Having non-const variables of static lifetime or even global scope is
usually a bad idea. These variables are inherently constants, and this
should be enforced.
This required marking some functions as not modifying input parameters
and marking some pointers as pointers to const.
One advantage is that the compiler usually puts const static variables
in a read-only code segment, so they can't be modified physically.
This can be verified with `nm` (on POSIX systems).
To avoid changes to the public API, functions returning non-const
pointers to data tables were left intact, but the returned data may not
be modified. Internally we prefer using the proj_list_* functions over
the pj_get_*_ref functions, because the former return const pointers.
|
|
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie
* Updated Appveyor and Travis build scripts
* Another appveyor script update
|
|
|
|
The projection list maintained by code in pj_list.c depended on stuff in
projects.h.
This stuff is non-obvious and since it is only used in pj_list.c, it has
been moved from projects.h to pj_list.c (The material moved is based on
some really clever X-macro techniques implemented by numerous
redefinitions of the PROJ_HEAD macro, followed by immediate re-inclusion
of te pj_list.h file).
Also, the self test runner pj_run_selftests has been remodelled, now
depending on a list of self test functions, generated in a similar way
to the projection list, and like the projection list generated by
X-macro techniques in pj_list.c.
For this to work, self test functions need to be available for all
projections. To fulfill this, stubs for all projections not having self
tests already, have been added to PJ_aea.c
Along with the recent build system patches by @kbevers, this first part
of the macro-refactoring project is considered close to finished.
|
|
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2196 4e78687f-474d-0410-85f9-8d5e500ac6b2
|
|
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1515 4e78687f-474d-0410-85f9-8d5e500ac6b2
|
|
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1256 4e78687f-474d-0410-85f9-8d5e500ac6b2
|
|
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@776 4e78687f-474d-0410-85f9-8d5e500ac6b2
|