[devel] proj 6.2.0

Vladislav Zavjalov slazav на altlinux.org
Вт Окт 8 09:40:52 MSK 2019


Добрый день!

В задании http://git.altlinux.org/tasks/238627/
сделана сборка нового proj, 6.2.0 (предыдущая версия - 5.2.0).
Если не будет возражений - отправлю в Сизиф.

С зависимыми пакетами пришлось обойтись следующим образом:

grass                   простая пересборка
libshape                добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
mapsoft                 добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H
libspatialite           добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
merkaartor              добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
octave-octproj          добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (srpm, patch)
perl-PDL                убрана зависимость на proj-nad (srpm, spec)
ogdi                    простая пересборка (srpm)
openorienteering-mapper добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
xygrib                  простая пересборка (srpm)
zygrib                  добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (srpm, patch)
osm2pgsql               добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
qlandkartegt            добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
spatialite-gui          добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (+ исправлена сборка)
postgis                 простая пересборка
vtk8.2                  использован внутренний libproj-4.4
qgis                    добавлен ACCEPT_USE_OF_DEPRECATED_PROJ_API_H (spec)
qgis3                   простая пересборка

В большинстве случаев пакеты еще не перешли на новый api, так что пришлось
добавить флаг ACCEPT_USE_OF_DEPRECATED_PROJ_API_H при сборке.
По возможности пытался добавить его в спек, когда это не получалось -
делал патч (octave-octproj и zygrib) или отдельный коммит (mapsoft,
spatialite-gui).

libproj я пока собрал с пустым пакетом libproj-nad, а provide/obsolete
proj-nad (который был нужен только perl-PDL) убрал вообще.
Теперь все нужные данные (не только nad) хранятся в пакете libproj.
Следующим шагом уберу libproj-nad (с исправлением всех, кто его явно требует).

В vtk8.2 я переключил сборку на внутренний libproj - он там совсем
старый, 4.4 и сборка с системным proj, насколько я понял, потребовала
бы каких-то еще действий, кроме установки ACCEPT_USE_OF_DEPRECATED_PROJ_API_H.
На самом деле, изменение в спеке там было такое:
-       -DVTK_USE_SYSTEM_LIBPROJ4=OFF \
+       -DVTK_USE_SYSTEM_LIBPROJ=OFF \
то есть, как я понял, мантейнер и так хотел собираться с внутренним libproj,
но ошибся с названием опции (или она со временем поменялась).
При этом сборочную зависимость на libproj у меня пока оторвать не
получилось (configure переставал что-то находить). Можно попробовать
сделать это отдельным шагом.

В spatialite-gui при сборке вылезла довольно очевидная неаккуратность с
переполнением буфера:
   char column_name[1024];
   char sql2[2048];
   sprintf(sql2, "StdDev_pop(%s), StdDev_samp(%s), ", column_name, column_name);
Это пришлось исправить. Мантейнер может сообщить в апстрим.

Всех мантейнеров упомянутых пакетов добавил в CC.



Подробная информация о списке рассылки Devel