update to fedora guidelines and based on debian splits
This commit is contained in:
parent
6f7bd36edf
commit
2c2386791f
@ -1,84 +0,0 @@
|
||||
%global project_owner MapServer
|
||||
%global project_name mapcache
|
||||
|
||||
Name: mapcache
|
||||
Version: 1.14.0
|
||||
Release: 0%{?dist}
|
||||
Summary: Caching server for WMS layers
|
||||
Group: Development/Tools
|
||||
%global dashver %(echo %version | sed 's|\\.|-|g')
|
||||
|
||||
License: MIT
|
||||
URL: http://mapserver.org/trunk/en/mapcache/
|
||||
|
||||
Source: https://github.com/%{project_owner}/%{project_name}/releases/download/rel-%{dashver}/mapcache-%{version}.tar.gz
|
||||
|
||||
Requires: httpd
|
||||
|
||||
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: cmake
|
||||
BuildRequires: fcgi-devel
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gdal-devel
|
||||
BuildRequires: geos-devel
|
||||
BuildRequires: httpd-devel
|
||||
BuildRequires: libcurl-devel
|
||||
BuildRequires: libjpeg-turbo-devel
|
||||
BuildRequires: libmemcached-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: pixman-devel
|
||||
BuildRequires: proj-devel
|
||||
BuildRequires: sqlite-devel
|
||||
|
||||
%global _description %{expand:
|
||||
MapCache is a server that implements tile caching to speed up access to WMS layers.
|
||||
The primary objectives are to be fast and easily deployable, while offering the
|
||||
essential features (and more!) expected from a tile caching solution.}
|
||||
|
||||
%description %{_description}
|
||||
|
||||
%package devel
|
||||
Summary: Development files for mapcache
|
||||
|
||||
%description devel %{_description}
|
||||
Development files for mapcache; these files are needed when building binary packages
|
||||
against libmapcache.
|
||||
|
||||
%prep
|
||||
%autosetup
|
||||
|
||||
%build
|
||||
#%cmake -DWITH_MEMCACHE=1 -DCMAKE_SKIP_BUILD_RPATH=TRUE .
|
||||
%cmake -DCMAKE_INSTALL_LIBDIR=%{_lib} -DWITH_MEMCACHE=1 -DCMAKE_SKIP_BUILD_RPATH=TRUE .
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
for f in \
|
||||
%{buildroot}%{_bindir}/{mapcache_seed,mapcache.fcgi,mapcache_detail} \
|
||||
%{buildroot}%{_libdir}/libmapcache.so* \
|
||||
%{buildroot}%{_libdir}/httpd/modules/mod_mapcache.so;
|
||||
do
|
||||
chrpath --delete $f
|
||||
done
|
||||
|
||||
# NOTE(neil): 2024-03-06 - Upstream tests require running httpd and loading module -- out of scope for %check but can (read: should) be implemented in tmt/zuul.
|
||||
|
||||
%files
|
||||
%doc INSTALL.md README.md LICENSE.md
|
||||
%{_bindir}/mapcache.fcgi
|
||||
%{_bindir}/mapcache_detail
|
||||
%{_bindir}/mapcache_seed
|
||||
%{_libdir}/libmapcache.so.%{version}
|
||||
%{_libdir}/libmapcache.so.1
|
||||
%{_libdir}/httpd/modules/mod_mapcache.so
|
||||
|
||||
%files devel
|
||||
%{_libdir}/libmapcache.so
|
||||
|
||||
%changelog
|
||||
* Thu Feb 29 2024 Neil Hanlon <neil@shrug.pw>
|
||||
- Initial package
|
3
mapcache.sysusers
Normal file
3
mapcache.sysusers
Normal file
@ -0,0 +1,3 @@
|
||||
g mapcache - -
|
||||
|
||||
u mapcache - "MapCache Service User" / - - - -
|
152
mapcache_detail.1.xml
Normal file
152
mapcache_detail.1.xml
Normal file
@ -0,0 +1,152 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<refentry id='mapcache_detail'>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>mapcache_detail</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>mapcache_detail</refname>
|
||||
<refpurpose>coverage analysis tool for SQLite caches</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>mapcache_detail</command>
|
||||
<arg choice='opt'><replaceable>options</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1 id='description'>
|
||||
<title>DESCRIPTION</title>
|
||||
<para>
|
||||
<command>mapcache_detail</command> is a coverage analysis tool for SQLite caches.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 id='options'>
|
||||
<title>OPTIONS</title>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<term><option>--config</option> <replaceable>file</replaceable></term>
|
||||
<listitem>
|
||||
<para>Configuration file (/path/to/mapcache.xml)</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-D</option></term>
|
||||
<term><option>--dimension</option> <replaceable>DIMENSION_NAME=VALUE</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set the value of a dimension: format DIMENSIONNAME=VALUE. Can be used multiple times for multiple dimensions</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--tileset</option> <replaceable>name</replaceable></term>
|
||||
<listitem>
|
||||
<para>Tileset to analyze</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-g</option></term>
|
||||
<term><option>--grid</option> <replaceable>name</replaceable></term>
|
||||
<listitem>
|
||||
<para>Grid to analyze</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-e</option></term>
|
||||
<term><option>--extent</option> <replaceable>minx,miny,maxx,maxy</replaceable></term>
|
||||
<listitem>
|
||||
<para>Extent to analyze: format minx,miny,maxx,maxy. Cannot be used with <option>--ogr-datasource</option></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--ogr-datasource</option> <replaceable>data source</replaceable></term>
|
||||
<listitem>
|
||||
<para>OGR data source to get features from. Cannot be used with <option>--extent</option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--ogr-layer</option> <replaceable>layer</replaceable></term>
|
||||
<listitem>
|
||||
<para>OGR layer inside OGR data source. Cannot be used with <option>--ogr-sql</option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-w</option></term>
|
||||
<term><option>--ogr-where</option> <replaceable>filter</replaceable></term>
|
||||
<listitem>
|
||||
<para>Filter to apply on OGR layer features. Cannot be used with <option>--ogr-sql</option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-s</option></term>
|
||||
<term><option>--ogr-sql</option> <replaceable>SQL query</replaceable></term>
|
||||
<listitem>
|
||||
<para>SQL query to filter inside OGR data source. Cannot be used with <option>--ogr-layer</option> or <option>--ogr-where</option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-z</option></term>
|
||||
<term><option>--zoom</option> <replaceable>minzoom,maxzoom</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set min and max zoom levels to analyze, separated by a comma, eg: 12,15</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-q</option></term>
|
||||
<term><option>--query</option> <replaceable>value</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set query for counting tiles in a rectangle. Default value works with default schema of SQLite caches.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--short-output</option></term>
|
||||
<listitem>
|
||||
<para>Only existing SQLite files are reported, missing SQLite files are still taken into account for level and global coverage.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1 id='example'>
|
||||
<title>EXAMPLE</title>
|
||||
|
||||
<informalexample>
|
||||
<para>Analyze tile coverage of tileset osm with the g grid. Default extent is the whole world and default zoom level is 0:</para>
|
||||
<screen>
|
||||
mapcache_detail --config mapcache.xml --tileset osm --grid g
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
<informalexample>
|
||||
<para>Same as beforehand, with explicit zoom levels 9 to 12 and explicit extent covering Switzerland:</para>
|
||||
<screen>
|
||||
mapcache_detail --config mapcache.xml --tileset osm --grid g --zoom 9,12 --extent 663000,5751230,1167680,6075050
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
358
mapcache_seed.1.xml
Normal file
358
mapcache_seed.1.xml
Normal file
@ -0,0 +1,358 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<refentry id='mapcache_seed'>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>mapcache_seed</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>mapcache_seed</refname>
|
||||
<refpurpose>generate tiles to seed mapcache</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>mapcache_seed</command>
|
||||
<arg choice='plain'><option>-c</option> <replaceable>/path/to/mapcache.xml</replaceable></arg>
|
||||
<arg choice='opt'><replaceable>options</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1 id='description'>
|
||||
<title>DESCRIPTION</title>
|
||||
<para>
|
||||
<command>mapcache_seed</command> is an advanced seeding tool for mapcache, whose main features are:
|
||||
<itemizedlist>
|
||||
<listitem override='bullet'>configurable number of seeding threads, to speed up the rendering</listitem>
|
||||
<listitem override='bullet'>ability to reseed tiles older than a certain timestamp</listitem>
|
||||
<listitem override='bullet'>ability to seed tiles given a shapefile/OGR datasource</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 id='options'>
|
||||
<title>OPTIONS</title>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<term><option>--config</option> <replaceable>file</replaceable></term>
|
||||
<listitem>
|
||||
<para>Path to the mapcache.xml configuration file that contains the tilesets that need to be seeded.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-C</option></term>
|
||||
<term><option>--cache</option> <replaceable>override</replaceable></term>
|
||||
<listitem>
|
||||
<para>Override cache used by selected tileset (useful for selectively seeding fallback/multitier caches).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--tileset</option> <replaceable>name</replaceable></term>
|
||||
<listitem>
|
||||
<para>Name of the tileset that must be seeded.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-g</option></term>
|
||||
<term><option>--grid</option> <replaceable>name</replaceable></term>
|
||||
<listitem>
|
||||
<para>Name of the grid that must be seeded (the selected tileset must reference the given grid).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-z</option></term>
|
||||
<term><option>--zoom</option> <replaceable>minzoom,maxzoom</replaceable></term>
|
||||
<listitem>
|
||||
<para>(Optional) Start and end zoom levels that must be seeded, separated by a comma, e.g. 0,6.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-M</option></term>
|
||||
<term><option>--metasize</option> <replaceable>width,height</replaceable></term>
|
||||
<listitem>
|
||||
<para>Override metatile size while seeding, e.g. 8,8.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-e</option></term>
|
||||
<term><option>--extent</option> <replaceable>minx,miny,maxx,maxy</replaceable></term>
|
||||
<listitem>
|
||||
<para>(Optional) Bounding box of the area to seed.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--older</option> <replaceable>timestamp|now</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
(Optional) Only seed tiles that are older than the given value.
|
||||
The value can either be the string "now", or a date formatted
|
||||
like year/month/day hour:minute, e.g.: "2011/01/31 20:45".
|
||||
(Note that a full timestamp should be quoted).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--nthreads</option> <replaceable>number</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Number of parallel threads that should be used to request
|
||||
tiles from the WMS source. The default is 1, but can be set higher
|
||||
if the WMS server can withstand parallel requests (as a rule of thumb,
|
||||
the value chosen here should never be much higher than the number
|
||||
of cpus on the WMS server). (Incompatible with
|
||||
<option>-p</option>/<option>--nprocesses</option>).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--nprocesses</option> <replaceable>number</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Number of parallel processes that should be used to request
|
||||
tiles from the WMS source. (Incompatible with
|
||||
<option>-n</option>/<option>--nthreads</option>).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-P</option></term>
|
||||
<term><option>--precent</option> <replaceable>number</replaceable></term>
|
||||
<listitem>
|
||||
<para>Percent of failed requests allowed from the last 1000 before we abort (default: 1%, set to 0 to abort on first error).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-L</option></term>
|
||||
<term><option>--log-failed</option> <replaceable>file</replaceable></term>
|
||||
<listitem>
|
||||
<para>Log failed tiles to <replaceable>file</replaceable>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-R</option></term>
|
||||
<term><option>--retry-failed</option> <replaceable>file</replaceable></term>
|
||||
<listitem>
|
||||
<para>Rtry failed requests logged to <replaceable>file</replaceable> by <option>--log-failed</option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-m</option></term>
|
||||
<term><option>--mode</option> <replaceable>seed|delete|transfer</replaceable></term>
|
||||
<listitem>
|
||||
<para>Mode the utility will be running in: either seed (default), delete or transfer.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-x</option></term>
|
||||
<term><option>--transfer</option> <replaceable>tileset</replaceable></term>
|
||||
<listitem>
|
||||
<para>Name of tileset to transfer.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-D</option></term>
|
||||
<term><option>--dimension</option> <replaceable>DIMENSION=VALUE</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Used to specify which dimension to use if the tileset supports
|
||||
dimensions. Can be used multiple times to set multiple
|
||||
dimensions, e.g. <option>-D</option> "DIM1=VAL1"
|
||||
<option>-D</option> "DIM2=VAL2".
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
<term><option>--help</option></term>
|
||||
<listitem>
|
||||
<para>Show help.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-q</option></term>
|
||||
<term><option>--quiet</option></term>
|
||||
<listitem>
|
||||
<para>Don't print progress messages to the standard output.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<term><option>--force</option></term>
|
||||
<listitem>
|
||||
<para>Force tile recreation even if it already exists.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-v</option></term>
|
||||
<term><option>--verbose</option></term>
|
||||
<listitem>
|
||||
<para>Print verbose debugging info (if compiled in).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<formalpara>
|
||||
<title>Optional Commandline options when using OGR/GEOS</title>
|
||||
</formalpara>
|
||||
<para>
|
||||
At compile time, if OGR and GEOS where found on the system, the seeder
|
||||
tool supports additional options to seed only the tiles that cover an
|
||||
arbitrary geographical area.
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>Important:</emphasis> Note that for the time being, the OGR
|
||||
datasource should be in the same projection as the grid you are seeding,
|
||||
as there is no automatic reprojection from the datasource projection to
|
||||
the grid projection.
|
||||
</para>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--ogr-datasource</option> <replaceable>datasource</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
OGR connection to the spatial source. Consult the OGR documentation
|
||||
for all that is supported. In the simplest case (e.g. a Shapefile),
|
||||
this is just the full filename of the shapefile.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--ogr-layer</option> <replaceable>layer</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
(Optional) For datasources that contain multiple layers (e.g. postgis,
|
||||
with multiple tables), determines which layer will be used.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-s</option></term>
|
||||
<term><option>--ogr-sql</option> <replaceable>SQL</replaceable></term>
|
||||
<listitem>
|
||||
<para>OGR sql expression that can be applied (see http://www.gdal.org/ogr/ogr_sql.html).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-w</option></term>
|
||||
<term><option>--ogr-where</option> <replaceable>where</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
SQL "where" expression to filter out returned values. This would
|
||||
typically be used to select only the geometry of a given country
|
||||
if the datasource contains all the world contours.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1 id='notes'>
|
||||
<title>NOTES</title>
|
||||
<para>
|
||||
The seeding utility must be run under the same user account as the user
|
||||
running the webserver. This is required so the permissions on the tiles
|
||||
created by the seeder are accessible by the webserver, and conversely so
|
||||
the seeder has the rights to write files to directories created by the
|
||||
webserver.
|
||||
</para>
|
||||
<para>
|
||||
A sample seeding session goes like this:
|
||||
</para>
|
||||
<informalexample>
|
||||
<screen>
|
||||
[user@host]$ sudo www-data
|
||||
[www-data@host]$ mapcache_seed -c /path/to/www/conf/mapcache.xml [options]
|
||||
[www-data@host]$ logout
|
||||
[user@host]$
|
||||
</screen>
|
||||
</informalexample>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 id='example'>
|
||||
<title>EXAMPLE</title>
|
||||
|
||||
<informalexample>
|
||||
<para>Seed the "osm" tileset with the "g"(google/web-mercator) grid:</para>
|
||||
<screen>
|
||||
mapcache_seed -c mapcache.xml -t osm -g g
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
<informalexample>
|
||||
<para>Seed levels 0 through 12:</para>
|
||||
<screen>
|
||||
mapcache_seed -c mapcache.xml -t osm -g g -z 0,12
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
<informalexample>
|
||||
<para>
|
||||
Given a shapefile that contains the world country contours, seed only
|
||||
the areas that are covered by land (i.e. skip the oceans). Also use 4
|
||||
request threads in parallel:
|
||||
</para>
|
||||
<screen>
|
||||
mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -n 4 -d /path/to/seed.shp
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
<informalexample>
|
||||
<para>
|
||||
Same as beforehand, but only seed the USA (notice the quote usage,
|
||||
required to create valid sql with a single-quoted 'US':
|
||||
</para>
|
||||
<screen>
|
||||
mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -n 4 -d /path/to/seed.shp -w "FIPS_A2='US'"
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
<informalexample>
|
||||
<para>
|
||||
Reseed levels 0 to 12 (this could also be done by deleting the cache for
|
||||
levels 0 to 12 and doing a classic seed, but doing so this way does not
|
||||
slow down the access from web clients):
|
||||
</para>
|
||||
<screen>
|
||||
mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -o now
|
||||
</screen>
|
||||
</informalexample>
|
||||
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
150
mod_mapcache.spec
Normal file
150
mod_mapcache.spec
Normal file
@ -0,0 +1,150 @@
|
||||
%global project_owner MapServer
|
||||
%global project_name mapcache
|
||||
|
||||
Name: mod_mapcache
|
||||
Version: 1.14.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Caching server for WMS layers
|
||||
Group: Development/Tools
|
||||
%global dashver %(echo %version | sed 's|\\.|-|g')
|
||||
|
||||
License: MIT
|
||||
URL: http://mapserver.org/trunk/en/mapcache/
|
||||
|
||||
Source: https://github.com/%{project_owner}/%{project_name}/releases/download/rel-%{dashver}/mapcache-%{version}.tar.gz
|
||||
Source: mapcache.sysusers
|
||||
|
||||
Source: https://salsa.debian.org/debian-gis-team/mapcache/-/raw/master/debian/man/mapcache_detail.1.xml
|
||||
Source: https://salsa.debian.org/debian-gis-team/mapcache/-/raw/master/debian/man/mapcache_seed.1.xml
|
||||
|
||||
Requires: httpd
|
||||
Requires: libmapcache%{?_isa} = %{version}-%{release}
|
||||
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: cmake
|
||||
BuildRequires: fcgi-devel
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gdal-devel
|
||||
BuildRequires: geos-devel
|
||||
BuildRequires: httpd-devel
|
||||
BuildRequires: libcurl-devel
|
||||
BuildRequires: libjpeg-turbo-devel
|
||||
BuildRequires: libmemcached-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: pixman-devel
|
||||
BuildRequires: proj-devel
|
||||
BuildRequires: sqlite-devel
|
||||
BuildRequires: systemd-rpm-macros
|
||||
|
||||
%global _description %{expand:
|
||||
MapCache is a server that implements tile caching to speed up access to WMS layers.
|
||||
The primary objectives are to be fast and easily deployable, while offering the
|
||||
essential features (and more!) expected from a tile caching solution.}
|
||||
|
||||
%description %{_description}
|
||||
This is the MapCache module for the Apache web server implementing OGC web
|
||||
services. An alternative mapcache FastCGI program is available in
|
||||
libmapcache-fcgi.
|
||||
|
||||
%pre
|
||||
%sysusers_create_compat %{SOURCE1}
|
||||
|
||||
%package -n libmapcache
|
||||
Summary: The shared library for mapcache
|
||||
|
||||
%description -n libmapcache %{_description}
|
||||
The shared library files for libmapcache
|
||||
|
||||
%package -n libmapcache-devel
|
||||
Summary: Development files for mapcache
|
||||
|
||||
%description -n libmapcache-devel %{_description}
|
||||
Development files for mapcache; these files are needed when building binary packages
|
||||
against libmapcache.
|
||||
|
||||
%package -n libmapcache-doc
|
||||
Summary: Documentation files for mapcache
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n libmapcache-doc %{_description}
|
||||
Documentation files for mapcache.
|
||||
|
||||
%package -n libmapcache-fcgi
|
||||
Summary: fcgi implementation for mapcache
|
||||
Requires: libmapcache%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description -n libmapcache-fcgi %{_description}
|
||||
This package contains the mapcache FastCGI program, as alternative to the
|
||||
Apache module available in mod_mapcache.
|
||||
|
||||
%package -n libmapcache-tools
|
||||
Summary: tools for mapcache
|
||||
|
||||
%description -n libmapcache-tools %{_description}
|
||||
Provides command-line utilities for mapcache
|
||||
|
||||
%prep
|
||||
%autosetup -n %{project_name}-%{version}
|
||||
|
||||
%build
|
||||
#%cmake -DWITH_MEMCACHE=1 -DCMAKE_SKIP_BUILD_RPATH=TRUE .
|
||||
%cmake -DCMAKE_INSTALL_LIBDIR=%{_lib} -DWITH_MEMCACHE=1 -DCMAKE_SKIP_BUILD_RPATH=TRUE .
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
for f in \
|
||||
%{buildroot}%{_bindir}/{mapcache_seed,mapcache.fcgi,mapcache_detail} \
|
||||
%{buildroot}%{_libdir}/libmapcache.so* \
|
||||
%{buildroot}%{_libdir}/httpd/modules/mod_mapcache.so;
|
||||
do
|
||||
chrpath --delete $f
|
||||
done
|
||||
|
||||
install -p -D -m 0644 mapcache.xml %{buildroot}%{_sysconfdir}/mapcache.xml
|
||||
install -p -D -m 0644 mapcache.xml.sample %{buildroot}%{_datadir}/mapcache/mapcache.xml.sample
|
||||
|
||||
install -p -D -d -m 0755 %{buildroot}%{_localstatedir}/cache/mapcache/
|
||||
|
||||
install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/mapcache.conf
|
||||
|
||||
install -p -D -m 0644 %{SOURCE2} %{buildroot}%{_mandir}/man1/mapcache_detail.1.xml
|
||||
install -p -D -m 0644 %{SOURCE3} %{buildroot}%{_mandir}/man1/mapcache_seed.1.xml
|
||||
|
||||
%files
|
||||
%doc INSTALL.md README.md LICENSE.md
|
||||
%{_libdir}/httpd/modules/mod_mapcache.so
|
||||
%config(noreplace) %{_sysconfdir}/mapcache.xml
|
||||
%{_datadir}/mapcache/mapcache.xml.sample
|
||||
|
||||
%files -n libmapcache
|
||||
%{_libdir}/libmapcache.so.%{version}
|
||||
%{_libdir}/libmapcache.so.1
|
||||
%{_localstatedir}/cache/mapcache
|
||||
%{_sysusersdir}/mapcache.conf
|
||||
|
||||
%files -n libmapcache-doc
|
||||
%doc INSTALL.md README.md LICENSE.md
|
||||
%{_mandir}/man1/mapcache_seed.1*
|
||||
%{_mandir}/man1/mapcache_detail.1*
|
||||
|
||||
%files -n libmapcache-devel
|
||||
%{_libdir}/libmapcache.so
|
||||
|
||||
%files -n libmapcache-fcgi
|
||||
%{_bindir}/mapcache.fcgi
|
||||
|
||||
%files -n libmapcache-tools
|
||||
%{_bindir}/mapcache_detail
|
||||
%{_bindir}/mapcache_seed
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Mar 11 2024 Neil Hanlon <neil@shrug.pw> - 1.14.0-1
|
||||
- Include mapcache.xml
|
||||
- split into subpackages following debian
|
||||
|
||||
* Thu Feb 29 2024 Neil Hanlon <neil@shrug.pw> - 1.14.0-0
|
||||
- Initial package based on work from ElNinijo
|
Loading…
Reference in New Issue
Block a user