[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