Skip to content
Commits on Source (26)
......@@ -16,9 +16,9 @@ include(CheckCSourceCompiles)
set (MapServer_VERSION_MAJOR 7)
set (MapServer_VERSION_MINOR 0)
set (MapServer_VERSION_REVISION 7)
set (MapServer_VERSION_SUFFIX "")
set (MapServer_VERSION_MINOR 2)
set (MapServer_VERSION_REVISION 0)
set (MapServer_VERSION_SUFFIX "-beta2")
set(TARGET_VERSION_MAJOR ${MapServer_VERSION_MAJOR})
set(TARGET_VERSION_MINOR ${MapServer_VERSION_MINOR})
......@@ -92,7 +92,6 @@ endif(NOT(WIN32))
check_function_exists("strrstr" HAVE_STRRSTR)
check_function_exists("strcasecmp" HAVE_STRCASECMP)
check_function_exists("strcasestr" HAVE_STRCASESTR)
check_function_exists("strdup" HAVE_STRDUP)
check_function_exists("strlcat" HAVE_STRLCAT)
check_function_exists("strlcpy" HAVE_STRLCPY)
check_function_exists("strlen" HAVE_STRLEN)
......@@ -117,6 +116,7 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
#options suported by the cmake builder
option(WITH_PROJ "Choose if reprojection support should be built in" ON)
option(WITH_PROTOBUFC "Choose if protocol buffers support should be built in (required for vector tiles)" ON)
option(WITH_KML "Enable native KML output support (requires libxml2 support)" OFF)
option(WITH_SOS "Enable SOS Server support (requires PROJ and libxml2 support)" OFF)
option(WITH_WMS "Enable WMS Server support (requires proj support)" ON)
......@@ -166,8 +166,8 @@ option(WITH_GENERIC_NINT "generic rounding" OFF)
# Add compiler flags for warnings
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_GNUCC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wdeclaration-after-statement")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Werror=format-security -Wdeclaration-after-statement")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror=format-security")
endif()
if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
......@@ -258,11 +258,12 @@ mapprojhack.c maptree.c mapdebug.c maplexer.c mapquantization.c mapunion.c
mapdraw.c maplibxml2.c mapquery.c maputil.c strptime.c mapdrawgdal.c
mapraster.c mapuvraster.c mapdummyrenderer.c mapobject.c maprasterquery.c
mapwcs.c maperror.c mapogcfilter.c mapregex.c mapwcs11.c mapfile.c
mapogcfiltercommon.c maprendering.c mapwcs20.c mapogcsld.c
mapogcfiltercommon.c maprendering.c mapwcs20.c mapogcsld.c mapmetadata.c
mapresample.c mapwfs.c mapgdal.c mapogcsos.c mapscale.c mapwfs11.c mapwfs20.c
mapgeomtransform.c mapogroutput.c mapwfslayer.c mapagg.cpp mapkml.cpp
mapgeomutil.cpp mapkmlrenderer.cpp fontcache.c textlayout.c maputfgrid.cpp
mapogr.cpp mapcontour.c mapsmoothing.c mapv8.cpp ${REGEX_SOURCES} kerneldensity.c)
mapogr.cpp mapcontour.c mapsmoothing.c mapv8.cpp ${REGEX_SOURCES} kerneldensity.c
mapcompositingfilter.c mapmvt.c)
set(mapserver_HEADERS
cgiutil.h dejavu-sans-condensed.h dxfcolor.h fontcache.h hittest.h mapagg.h
......@@ -273,8 +274,39 @@ mappostgis.h mapprimitive.h mapproject.h mapraster.h mapregex.h mapresample.h
mapserver-api.h mapserver.h mapserv.h mapshape.h mapsymbol.h maptemplate.h
mapthread.h maptile.h maptime.h maptree.h maputfgrid.h mapwcs.h uthash.h)
if(WIN32)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/version.rc.in
${CMAKE_CURRENT_BINARY_DIR}/version.rc
@ONLY)
set(mapserver_SOURCES ${mapserver_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/version.rc)
endif(WIN32)
if(WITH_PROTOBUFC)
find_package(ProtobufC)
if(NOT PROTOBUFC_FOUND)
report_optional_not_found(PROTOBUFC)
else(NOT PROTOBUFC_FOUND)
list(APPEND ALL_INCLUDE_DIRS ${PROTOBUFC_INCLUDE_DIR})
FILE(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/renderers/mvt)
# Create custom command for protoc-c
ADD_CUSTOM_COMMAND(
COMMAND ${PROTOBUFC_COMPILER}
ARGS --c_out=${PROJECT_BINARY_DIR}/renderers/mvt --proto_path=${PROJECT_SOURCE_DIR}/renderers/mvt ${PROJECT_SOURCE_DIR}/renderers/mvt/vector_tile.proto
OUTPUT ${PROJECT_BINARY_DIR}/renderers/mvt/vector_tile.pb-c.c ${PROJECT_BINARY_DIR}/renderers/mvt/vector_tile.pb-c.h
)
SET_SOURCE_FILES_PROPERTIES(${PROJECT_BINARY_DIR}/renderers/mvt/vector_tile.pb-c.h ${PROJECT_BINARY_DIR}/renderers/mvt/vector_tile.pb-c.c GENERATED)
set (vectortile_SOURCES ${PROJECT_BINARY_DIR}/renderers/mvt/vector_tile.pb-c.c)
set (USE_PBF 1)
endif(NOT PROTOBUFC_FOUND)
endif (WITH_PROTOBUFC)
if(BUILD_DYNAMIC)
add_library(mapserver SHARED ${mapserver_SOURCES} ${agg_SOURCES} ${v8_SOURCES})
add_library(mapserver SHARED ${vectortile_SOURCES} ${mapserver_SOURCES} ${agg_SOURCES} ${v8_SOURCES})
set_target_properties( mapserver PROPERTIES
VERSION ${MapServer_VERSION_STRING}
SOVERSION 2
......@@ -282,7 +314,7 @@ if(BUILD_DYNAMIC)
endif(BUILD_DYNAMIC)
if(BUILD_STATIC)
add_library(mapserver_static STATIC ${mapserver_SOURCES} ${agg_SOURCES} ${v8_SOURCES})
add_library(mapserver_static STATIC ${vectortile_SOURCES} ${mapserver_SOURCES} ${agg_SOURCES} ${v8_SOURCES})
set_target_properties( mapserver_static PROPERTIES
VERSION ${MapServer_VERSION_STRING}
SOVERSION 2
......@@ -363,6 +395,12 @@ if(WITH_PROJ)
endif(NOT PROJ_FOUND)
endif (WITH_PROJ)
if(USE_PBF)
include_directories(${PROJECT_BINARY_DIR}/renderers/mvt)
include_directories(${PROTOBUFC_INCLUDE_DIR})
ms_link_libraries( ${PROTOBUFC_LIBRARY})
endif()
if(WITH_PIXMAN)
find_package(Pixman)
if(PIXMAN_FOUND)
......@@ -914,6 +952,7 @@ status_optional_component("LIBXML2" "${USE_LIBXML2}" "${LIBXML2_LIBRARY}")
status_optional_component("POSTGIS" "${USE_POSTGIS}" "${POSTGRESQL_LIBRARY}")
status_optional_component("GEOS" "${USE_GEOS}" "${GEOS_LIBRARY}")
status_optional_component("FastCGI" "${USE_FASTCGI}" "${FCGI_LIBRARY}")
status_optional_component("PROTOBUFC" "${USE_PBF}" "${PROTOBUFC_LIBRARY}")
if(USE_ORACLESPATIAL OR USE_ORACLE_PLUGIN)
if(USE_ORACLESPATIAL)
status_optional_component("Oracle Spatial" "${USE_ORACLESPATIAL}" "${ORACLE_LIBRARY}")
......
# How to contribute to MapServer
Contributions to the MapServer project are most welcome, and can take many forms such as detailed bug reports, documentation,
tests, features, and patches.
## Bugs and Help
GitHub issues should only be created to log bugs. For general help and support the MapServer [mailing lists](http://mapserver.org/community/lists.html)
should be used. If you are unsure if you have discovered a bug, or may need help with configuring MapServer please
post to the [mapserver-users list](http://lists.osgeo.org/mailman/listinfo/mapserver-users). There is also
a [MapServer FAQ](http://www.mapserver.org/faq.html) which may have a solution to your problem.
If you have discovered a bug, please refer to the [Bug Submission page](http://mapserver.org/development/bugs.html) for
guidelines on creating an issue on GitHub. Please also search the existing issues to see if the bug has already been reported, and
add any further details to the existing issue.
For professional support please see the [MapServer Service Providers page](http://mapserver.org/community/service_providers.html).
## Development
A seperate [mapserver-dev mailing list](http://lists.osgeo.org/mailman/listinfo/mapserver-dev) is available for developers
working on the MapServer code.
Details on using GitHub can be found on the [MapServer GutHub page](http://mapserver.org/development/git.html)
Additional developer notes can be found in the [MapServer wiki](https://github.com/mapserver/mapserver/wiki#developer-notes), including
coding style and guidelines, memory management, and working with Git.
## Documentation
The MapServer documentation is stored in a [seperate repository](https://github.com/mapserver/docs). Please submit any documentation
issues or changes there. See the [Documentation Development Guide](http://mapserver.org/development/documentation.html) for further details.
......@@ -12,6 +12,36 @@ For a complete change history, please see the Git log comments. For more
details about recent point releases, please see the online changelog at:
http://mapserver.org/development/changelog/
7.2.0-beta2 release (2018-6-13)
- Update beta1 release notes to remove reference to PHP7 support
- No other major changes, see detailed changelog for bug fixes
7.2.0-beta1 release (2018-5-9)
--------------------
- Support for Enhanced Layer Metadata Management (RFC82)
- Calculate MINDISTANCE from label bounds instead of label center (#5369)
- Reposition follow labels on maxoverlapangle colisions (RFC112)
- Implement chainable compositing filters (RFC113)
- Faster retrieval of shape count (RFC114)
- WMS layer groups are now requestable
- Support C-style multi-line content types (#5362)
- Python 3.x support (#5561)
- Support Vendor-Specific OGC FILTER parameter in WMS requests (RFC118)
- Mapbox Vector Tile (MVT) Support (RFC119)
- INSPIRE download service support for WCS 2.0 (RFC120)
7.0.0 release (2015/07/24)
--------------------------
......@@ -1630,7 +1660,7 @@ Version 5.4.0-beta1 (2009-2-18):
- Fixed a scalebar rounding problem causing to draw zero scalebar width (#2890)
- SLD: if it conatins a Filer Encoding tag, try to always set the
- SLD: if it contains a Filter Encoding tag, try to always set the
layer's FILTER element (#2889)
- Add support for rendering INLINE layers with layer attributes (items) (#2870)
......
......@@ -67,7 +67,7 @@ License
::
Copyright (c) 2008-2017 Open Source Geospatial Foundation.
Copyright (c) 2008-2018 Open Source Geospatial Foundation.
Copyright (c) 1996-2008 Regents of the University of Minnesota.
Permission is hereby granted, free of charge, to any person obtaining a copy
......
......@@ -7,8 +7,7 @@ require 'socket'
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
config.vm.box = "ubuntu/trusty64"
config.vm.hostname = "mapserver-vagrant"
......@@ -20,6 +19,15 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
v.name = "mapserver-vagrant"
end
# Unless explicitly declined, use the VM host's file system to cache
# .deb files to avoid repeated downloads on each vagrant up
unless File.exists?("../.no_apt_cache")
cache_dir = "../apt-cache/#{config.vm.box}"
FileUtils.mkdir_p(cache_dir) unless Dir.exists?(cache_dir)
puts "Using local apt cache, #{cache_dir}"
config.vm.synced_folder cache_dir, "/var/cache/apt/archives"
end
config.vm.provision "shell", path: "scripts/vagrant/virtualbox-fix.sh"
config.vm.provision "shell", path: "scripts/vagrant/packages.sh"
config.vm.provision "shell", path: "scripts/vagrant/postgis.sh"
......
......@@ -40,7 +40,7 @@ static int
msIO_apacheError (void *cbData, void *data, int byteCount)
{
/* error reporting is done through the log file... */
ap_log_error (APLOG_MARK, APLOG_ERR, 0, NULL, (char*) data);
ap_log_error (APLOG_MARK, APLOG_ERR, 0, NULL, "%s", (char*) data);
return strlen ((char*) data);
}
......
# - Find protobuf-c
# Find protobuf c implementation libraries, includes and the protoc-c compiler
# FindProtobufC was loosely based on FindProtobuf that is shipped with cmake
#
# Module defines:
# PROTOBUFC_FOUND - library, includes and compiler where found
# PROTOBUFC_INCLUDE_DIRS - include directories
# PROTOBUFC_LIBRARIES - protobuf-c libraries
# PROTOBUFC_EXECUTEABLE - protobuf-c compiler
#
# Environment variables:
# PROTOBUFC_ROOTDIR - optional - rootdir of protobuf-c installation
#
# Cache entries:
# PROTOBUFC_LIBRARY - detected protobuf-c library
# PROTOBUF_INCLUDE_DIR - detected protobuf-c include dir(s)
# PROTOBUF_COMPILER - detected protobuf-c compiler
#
####
#
# ====================================================================
# Example:
#
# find_package(ProtobufC REQUIRED)
# include_directories(${PROTOBUFC_INCLUDE_DIRS})
# include_directories(${CMAKE_CURRENT_BINARY_DIR})
# PROTOBUFC_GENERATE_C(PROTO_SOURCES PROTO_HEADERS protobuf.proto)
# add_executable(bar bar.c ${PROTO_SRCn} ${PROTO_HDRS})
# target_link_libraries(bar ${PROTOBUF_LIBRARIES})
#
# NOTE: You may need to link against pthreads, depending
# on the platform.
#
# NOTE: The PROTOBUF_GENERATE_CPP macro & add_executable() or add_library()
# calls only work properly within the same directory.
#
# ====================================================================
#=============================================================================
# Copyright 2013 Thinstuff Technologies GmbH
# Copyright 2013 Bernhard Miklautz <bmiklautz@thinstuff.at>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#=============================================================================
set(PROTBUFC_SOURCE_EXTENSION "pb-c.c")
set(PROTBUFC_HEADER_EXTENSION "pb-c.h")
function(PROTOBUFC_GENERATE_C SOURCES HEADERS)
if(NOT ARGN)
message(SEND_ERROR "Error: PROTOBUFC_GENERATE_C() called without any proto files")
return()
endif(NOT ARGN)
foreach(FIL ${ARGN})
get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
get_filename_component(FIL_WE ${FIL} NAME_WE)
get_filename_component(FIL_PATH ${ABS_FIL} PATH)
list(APPEND ${SOURCES} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.${PROTBUFC_SOURCE_EXTENSION}")
list(APPEND ${HEADERS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.${PROTBUFC_HEADER_EXTENSION}")
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.${PROTBUFC_SOURCE_EXTENSION}"
"${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.${PROTBUFC_HEADER_EXTENSION}"
COMMAND ${PROTOBUFC_COMPILER}
ARGS --c_out ${CMAKE_CURRENT_BINARY_DIR} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${FIL_PATH} ${ABS_FIL}
DEPENDS ${ABS_FIL}
COMMENT "Running protobuf-c compiler on ${FIL}"
VERBATIM )
endforeach()
set_source_files_properties(${${SOURCES}} ${${HEADERS}} PROPERTIES GENERATED TRUE)
set(${SOURCES} ${${SOURCES}} PARENT_SCOPE)
set(${HEADERS} ${${HEADERS}} PARENT_SCOPE)
endfunction()
find_library(PROTOBUFC_LIBRARY
NAMES "protobuf-c"
PATHS "/usr" "/usr/local" "/opt" ENV PROTOBUFC_ROOTDIR
PATH_SUFFIXES "lib")
mark_as_advanced(PROTOBUFC_LIBRARY)
find_path(PROTOBUFC_INCLUDE_DIR
NAMES "google/protobuf-c/protobuf-c.h"
PATHS "/usr" "/usr/local" "/opt" ENV PROTOBUFC_ROOTDIR
PATH_SUFFIXES "include")
mark_as_advanced(PROTOBUFC_INCLUDE_DIR)
find_program(PROTOBUFC_COMPILER
NAMES "protoc-c"
PATHS "/usr" "/usr/local" "/opt" ENV PROTOBUFC_ROOTDIR
PATH_SUFFIXES "bin")
mark_as_advanced(PROTOBUFC_COMPILER)
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(ProtobufC DEFAULT_MSG PROTOBUFC_LIBRARY PROTOBUFC_COMPILER PROTOBUFC_INCLUDE_DIR )
if (PROTOBUFC_FOUND)
set(PROTOBUFC_LIBRARIES ${PROTOBUFC_LIBRARY})
set(PROTOBUFC_INCLUDE_DIRS ${PROTOBUFC_INCLUDE_DIR})
set(PROTOBUFC_EXECUTEABLE ${PROTOBUFC_COMPILER})
endif(PROTOBUFC_FOUND)
usr/bin/mapserv usr/lib/cgi-bin/mapserv
mapserver (7.0.7-2) UNRELEASED; urgency=medium
mapserver (7.2.0-1) unstable; urgency=medium
* New upstream release.
* Bump Standards-Version to 4.1.5, no changes.
* Update symbols for amd64.
* Strip pre-releases from symbols version.
* Move from experimental to unstable.
-- Bas Couwenberg <sebastic@debian.org> Tue, 24 Jul 2018 08:08:43 +0200
mapserver (7.2.0~beta2-1~exp1) experimental; urgency=medium
* New upstream beta release.
* Update symbols for other architectures.
-- Bas Couwenberg <sebastic@debian.org> Wed, 13 Jun 2018 18:15:40 +0200
mapserver (7.2.0~beta1-1~exp1) experimental; urgency=medium
* New upstream beta release.
* Update copyright-format URL to use HTTPS.
* Bump Standards-Version to 4.1.4, no changes.
* Add patch to exclude .java files from mapscript.jar.
* Fix deprecated source override location.
* Update watch file to use HTTPS.
* Update Vcs-* URLs for Salsa.
* Strip trailing whitespace from control & rules files.
* Update copyright file, changes:
- Update copyright years for existing copyright holders
- Update license for Bison files
- Drop license & copyright for pygdioctx, removed upstream
* Add protobuf build dependencies for MVT support.
* Drop obsolete dbg package.
* Replace /usr/lib/cgi-bin/mapserv with symlink to /usr/bin/mapserv.
* Update symbols for amd64.
-- Bas Couwenberg <sebastic@debian.org> Sat, 20 Jan 2018 22:17:20 +0100
-- Bas Couwenberg <sebastic@debian.org> Wed, 09 May 2018 22:21:12 +0200
mapserver (7.0.7-1) unstable; urgency=medium
......
......@@ -5,7 +5,7 @@ Uploaders: Francesco Paolo Lovergine <frankie@debian.org>,
Bas Couwenberg <sebastic@debian.org>
Section: devel
Priority: optional
Build-Depends: debhelper (>= 9),
Build-Depends: debhelper (>= 9.20160114),
# dh-php,
dh-python,
dpkg-dev (>= 1.16.1.1),
......@@ -25,6 +25,7 @@ Build-Depends: debhelper (>= 9),
libjpeg-dev,
libperl-dev,
libpng-dev,
libprotobuf-c-dev,
libpq-dev,
libproj-dev,
librsvg2-dev,
......@@ -34,6 +35,7 @@ Build-Depends: debhelper (>= 9),
# php-dev,
pkg-config,
pkg-kde-tools,
protobuf-c-compiler,
python-all (>= 2.6.6-3~),
python-all-dev (>= 2.6.6-3~),
ruby,
......@@ -45,7 +47,7 @@ Build-Depends: debhelper (>= 9),
docbook-xml,
xsltproc
Build-Conflicts: libcurl3-openssl-dev
Standards-Version: 4.1.4
Standards-Version: 4.1.5
Vcs-Browser: https://salsa.debian.org/debian-gis-team/mapserver
Vcs-Git: https://salsa.debian.org/debian-gis-team/mapserver.git
Homepage: http://www.mapserver.org
......@@ -72,21 +74,6 @@ Description: Shared library for MapServer
functionality in MapScript is provided by the suggested mapscript
library packages.
Package: libmapserver-dbg
Architecture: any
Section: debug
Depends: libmapserver2 (= ${binary:Version}),
${misc:Depends}
Breaks: libmapserver1-dbg (<< 7.0.0~)
Replaces: libmapserver1-dbg (<< 7.0.0~)
Description: Debugging symbols for libmapserver
MapServer is a CGI-based framework for Internet map services which
supports Open Geospatial Consortium (OGC) standards. Scripting
functionality in MapScript is provided by the suggested mapscript
library packages.
.
This package contains the debugging symbols for libmapserver.
Package: libmapserver-dev
Architecture: any
Section: libdevel
......@@ -114,10 +101,10 @@ Description: Shared library development files for MapServer
Package: cgi-mapserver
Architecture: any
Section: web
Depends: ${shlibs:Depends},
Depends: mapserver-bin,
${shlibs:Depends},
${misc:Depends}
Suggests: mapserver-bin,
mapserver-doc,
Suggests: mapserver-doc,
libmapscript-perl,
# php-mapscript,
python-mapscript,
......
......@@ -4,8 +4,9 @@ Upstream-Contact: The MapServer team <mapserver-dev@lists.osgeo.org>
Source: https://github.com/mapserver/mapserver
Files: *
Copyright: 2008-2017, Open Source Geospatial Foundation.
1996-2014, Regents of the University of Minnesota.
Copyright: 2008-2018, Open Source Geospatial Foundation.
2006-2007, 2017, Tom Kralidis <tomkralidis@gmail.com>
1996-2015, Regents of the University of Minnesota.
2011, 2013, Alan Boudreault, MapGears
2013, Even Rouault
2010-2011, EOX IT Services GmbH, Austria
......@@ -14,7 +15,6 @@ Copyright: 2008-2017, Open Source Geospatial Foundation.
2008, 2010, Paul Ramsey
2009-2010, Thomas Bonfort
2000-2006, 2008, Y. Assefa, DM Solutions Group inc.
2006-2007, Tom Kralidis <tomkralidis@gmail.com>
2007, IS Consulting (www.mapdotnet.com)
2000-2005, DM Solutions Group
2004-2005, Sean Gillies <sgillies@frii.com>
......@@ -63,18 +63,13 @@ License: BSD-3-clause-KTH
Files: mapparser.c
mapparser.h
Copyright: 1984, 1989-1990, 2000-2006, Free Software Foundation, Inc.
License: GPL-2+ with Bison exception
Copyright: 1984, 1989-1990, 2000-2011, Free Software Foundation, Inc.
License: GPL-3+ with Bison exception
Files: uthash.h
Copyright: 2003-2013, Troy D. Hanson
License: BSD-1-clause
Files: mapscript/python/pygdioctx/pygdioctx.c
mapscript/python/pygdioctx/pygdioctx.h
Copyright: 1995, Richard Jones, Bureau of Meteorology Australia
License: BSD-3-clause-GDMODULE-LICENSE
Files: opengl/glext.h
Copyright: 1991-2004, Silicon Graphics, Inc
2005, NVIDIA Corporation
......@@ -343,35 +338,6 @@ License: MIT-mapstring
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
License: BSD-3-clause-GDMODULE-LICENSE
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
.
Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution. Neither the name of the Bureau of Meteorology
Australia nor the names of its contributors may be used to endorse
or promote products derived from this software without specific
prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: BSD-1-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
......@@ -487,11 +453,11 @@ License: BSL-1.0
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
License: GPL-2+ with Bison exception
License: GPL-3+ with Bison exception
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
the Free Software Foundation; either version 3 of the license, or
(at your option) any later version.
.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
......@@ -499,9 +465,7 @@ License: GPL-2+ with Bison exception
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
along with this program; if not, see <http://www.gnu.org/licenses/>
.
As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
......@@ -517,8 +481,8 @@ License: GPL-2+ with Bison exception
version 2.2 of Bison.
.
On Debian systems, the full text of the GNU General Public
License version 2 can be found in the file
`/usr/share/common-licenses/GPL-2'.
License version 3 can be found in the file
`/usr/share/common-licenses/GPL-3'.
License: SGI-B-1.1
License Applicability. Except to the extent portions of this file are
......
This diff is collapsed.
Description: Exclude .java files from jar.
Author: Bas Couwenberg <sebastic@debian.org>
Forwarded: https://github.com/mapserver/mapserver/pull/5545
--- a/mapscript/java/CMakeLists.txt
+++ b/mapscript/java/CMakeLists.txt
@@ -38,7 +38,7 @@ ADD_CUSTOM_COMMAND(TARGET javamapscript
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
POST_BUILD
COMMAND ${Java_JAVAC_EXECUTABLE} edu/umn/gis/mapscript/*.java
- COMMAND ${Java_JAR_EXECUTABLE} cf mapscript.jar edu
+ COMMAND ${Java_JAR_EXECUTABLE} cf mapscript.jar edu/umn/gis/mapscript/*.class
COMMENT "Compiling java source files, creating mapscript.jar"
)
......@@ -2,4 +2,3 @@ hardening.patch
perl-mapscript-install.patch
ruby-mapscript-install.patch
java-hardening.patch
jar-contains-source.patch
......@@ -139,10 +139,6 @@ override_dh_auto_install:
# removing embedded rpath in libraries
-find $(CURDIR)/debian/tmp/usr/lib -name "*.so*" -type f -exec chrpath --delete {} \;
# CGI mapserver
-mkdir -p debian/tmp/usr/lib/cgi-bin
install -m755 debian/tmp/usr/bin/mapserv debian/tmp/usr/lib/cgi-bin/mapserv
# TODO: Use dh_php for substvars & mapscript.ini installation
# PHP mapscript
#echo 'misc:Depends=phpapi-'$(PHPAPI) >> debian/php-mapscript.substvars
......@@ -177,4 +173,4 @@ override_dh_java:
dh_java -plibmapscript-java
override_dh_strip:
dh_strip --dbg-package=libmapserver-dbg
dh_strip --dbgsym-migration='libmapserver-dbg (<< 7.2.0~)'
......@@ -46,6 +46,7 @@ struct ft_thread_cache{
ft_cache cache;
};
ft_thread_cache *ft_caches;
int use_global_ft_cache;
#else
ft_cache global_ft_cache;
#endif
......@@ -102,9 +103,12 @@ ft_cache* msGetFontCache() {
#ifndef USE_THREAD
return &global_ft_cache;
#else
void* nThreadId = msGetThreadId();
void* nThreadId = 0;
ft_thread_cache *prev = NULL, *cur = ft_caches;
if (!use_global_ft_cache)
nThreadId = msGetThreadId();
if( cur != NULL && cur->thread_id == nThreadId )
return &cur->cache;
......@@ -155,6 +159,12 @@ void msFontCacheSetup() {
ft_cache *c = msGetFontCache();
msInitFontCache(c);
#else
char* use_global_cache = getenv("MS_USE_GLOBAL_FT_CACHE");
if (use_global_cache)
use_global_ft_cache = atoi(use_global_cache);
else
use_global_ft_cache = 0;
ft_caches = NULL;
#endif
}
......@@ -202,15 +212,23 @@ face_element* msGetFontFace(char *key, fontSetObj *fontset) {
if(!key) {
key = MS_DEFAULT_FONT_KEY;
}
#ifdef USE_THREAD
if (use_global_ft_cache)
msAcquireLock(TLOCK_TTF);
#endif
UT_HASH_FIND_STR(cache->face_cache,key,fc);
if(!fc) {
char *fontfile = NULL;
const char *fontfile = NULL;
fc = msSmallCalloc(1,sizeof(face_element));
if(fontset && strcmp(key,MS_DEFAULT_FONT_KEY)) {
fontfile = msLookupHashTable(&(fontset->fonts),key);
if(!fontfile) {
msSetError(MS_MISCERR, "Could not find font with key \"%s\" in fontset", "msGetFontFace()", key);
free(fc);
#ifdef USE_THREAD
if (use_global_ft_cache)
msReleaseLock(TLOCK_TTF);
#endif
return NULL;
}
error = FT_New_Face(cache->library,fontfile,0, &(fc->face));
......@@ -220,6 +238,10 @@ face_element* msGetFontFace(char *key, fontSetObj *fontset) {
if(error) {
msSetError(MS_MISCERR, "Freetype was unable to load font file \"%s\" for key \"%s\"", "msGetFontFace()", fontfile, key);
free(fc);
#ifdef USE_THREAD
if (use_global_ft_cache)
msReleaseLock(TLOCK_TTF);
#endif
return NULL;
}
if(!fc->face->charmap) {
......@@ -231,7 +253,10 @@ face_element* msGetFontFace(char *key, fontSetObj *fontset) {
fc->font = msStrdup(key);
UT_HASH_ADD_KEYPTR(hh,cache->face_cache,fc->font, strlen(key), fc);
}
#ifdef USE_THREAD
if (use_global_ft_cache)
msReleaseLock(TLOCK_TTF);
#endif
return fc;
}
......@@ -271,6 +296,10 @@ outline_element* msGetGlyphOutline(face_element *face, glyph_element *glyph) {
ft_cache *cache = msGetFontCache();
memset(&key,0,sizeof(outline_element_key));
key.glyph = glyph;
#ifdef USE_THREAD
if (use_global_ft_cache)
msAcquireLock(TLOCK_TTF);
#endif
UT_HASH_FIND(hh,face->outline_cache,&key, sizeof(outline_element_key),oc);
if(!oc) {
FT_Matrix matrix;
......@@ -284,9 +313,13 @@ outline_element* msGetGlyphOutline(face_element *face, glyph_element *glyph) {
matrix.xy = matrix.yx = 0x00000L;
pen.x = pen.y = 0;
FT_Set_Transform(face->face, &matrix, &pen);
error = FT_Load_Glyph(face->face,glyph->key.codepoint,FT_LOAD_DEFAULT/*|FT_LOAD_IGNORE_TRANSFORM*/|FT_LOAD_NO_HINTING|FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH);
error = FT_Load_Glyph(face->face,glyph->key.codepoint,FT_LOAD_DEFAULT|FT_LOAD_NO_BITMAP/*|FT_LOAD_IGNORE_TRANSFORM*/|FT_LOAD_NO_HINTING|FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH);
if(error) {
msSetError(MS_MISCERR, "unable to load glyph %ud for font \"%s\"", "msGetGlyphByIndex()",glyph->key.codepoint, face->font);
#ifdef USE_THREAD
if (use_global_ft_cache)
msReleaseLock(TLOCK_TTF);
#endif
return NULL;
}
error = FT_Outline_New(cache->library, face->face->glyph->outline.n_points,
......@@ -295,5 +328,17 @@ outline_element* msGetGlyphOutline(face_element *face, glyph_element *glyph) {
oc->key = key;
UT_HASH_ADD(hh,face->outline_cache,key,sizeof(outline_element_key), oc);
}
#ifdef USE_THREAD
if (use_global_ft_cache)
msReleaseLock(TLOCK_TTF);
#endif
return oc;
}
int msIsGlyphASpace(glyphObj *glyph) {
/* space or tab, for now */
unsigned int space,tab;
space = msGetGlyphIndex(glyph->face,0x20);
tab = msGetGlyphIndex(glyph->face,0x9);
return glyph->glyph->key.codepoint == space || glyph->glyph->key.codepoint == tab;
}
......@@ -80,6 +80,7 @@ outline_element* msGetGlyphOutline(face_element *face, glyph_element *glyph);
glyph_element* msGetBitmapGlyph(rendererVTableObj *renderer, unsigned int size, unsigned int unicode);
unsigned int msGetGlyphIndex(face_element *face, unsigned int unicode);
glyph_element* msGetGlyphByIndex(face_element *face, unsigned int size, unsigned int codepoint);
int msIsGlyphASpace(glyphObj *glyph);
#ifdef __cplusplus
}
......
......@@ -84,7 +84,7 @@ int msComputeKernelDensityDataset(mapObj *map, imageObj *image, layerObj *kernel
int status,layer_idx, i,j, nclasses=0, have_sample=0;
rectObj searchrect;
shapeObj shape;
layerObj *layer;
layerObj *layer = NULL;
float *values = NULL;
int radius = 10, im_width = image->width, im_height = image->height;
int expand_searchrect=1;
......
......@@ -1333,15 +1333,10 @@ int aggCompositeRasterBuffer(imageObj *dest, rasterBufferObj *overlay, Compositi
#endif
}
rasterBufferObj* msApplyFilterToRasterBuffer(const rasterBufferObj *rb, CompositingFilter *filter) {
rasterBufferObj *rbret = (rasterBufferObj*)msSmallCalloc(sizeof(rasterBufferObj),1);
msCopyRasterBuffer(rbret,rb);
rendering_buffer b(rbret->data.rgba.pixels, rbret->width, rbret->height, rbret->data.rgba.row_step);
void msApplyBlurringCompositingFilter(rasterBufferObj *rb, unsigned int radius) {
rendering_buffer b(rb->data.rgba.pixels, rb->width, rb->height, rb->data.rgba.row_step);
pixel_format pf(b);
/* for now, we only support a blurring filter */
int radius = atoi(filter->filter);
mapserver::stack_blur_rgba32(pf,radius,radius);
return rbret;
}
int msPopulateRendererVTableAGG(rendererVTableObj * renderer)
......