Switch lensfun to CMake, dropping build-time Python dependency and
lowering overall patches count. Also enables libauxfun to build. The main point is to stop putting wrong soname in shared objects, to unbreak lib-depends-check in dependant ports. okay sthen@
This commit is contained in:
parent
cc76150531
commit
aee6cc5bcb
@ -1,9 +1,11 @@
|
||||
# $OpenBSD: Makefile,v 1.14 2015/06/23 22:00:55 sthen Exp $
|
||||
# $OpenBSD: Makefile,v 1.15 2015/07/05 12:03:34 zhuk Exp $
|
||||
|
||||
COMMENT= library to adjust for photographic lens characteristics
|
||||
DISTNAME= lensfun-0.2.7
|
||||
SHARED_LIBS= lensfun 1.0
|
||||
REVISION= 1
|
||||
REVISION= 2
|
||||
|
||||
SHARED_LIBS= lensfun 1.0
|
||||
SHARED_LIBS+= auxfun 0.0
|
||||
|
||||
CATEGORIES= graphics
|
||||
HOMEPAGE= http://lensfun.sourceforge.net/
|
||||
@ -16,39 +18,31 @@ WANTLIB += c glib-2.0 m png pthread stdc++ z
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=lensfun.berlios/}
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
||||
MODULES= lang/python devel/gettext
|
||||
MODPY_RUNDEP= No
|
||||
MODULES= devel/cmake devel/gettext
|
||||
BUILD_DEPENDS= devel/doxygen>=1.7.2
|
||||
|
||||
LIB_DEPENDS= devel/glib2 \
|
||||
graphics/png
|
||||
|
||||
MAKE_FLAGS= V=1 INSTDIR_manual=${PREFIX}/share/doc/lensfun \
|
||||
LIBlensfun_VERSION=${LIBlensfun_VERSION}
|
||||
CONFIGURE_ARGS= -DBUILD_DOC=Yes \
|
||||
-DBUILD_AUXFUN=Yes
|
||||
|
||||
USE_GMAKE= Yes
|
||||
CONFIGURE_STYLE= simple
|
||||
CONFIGURE_SCRIPT= ${MODPY_BIN} ./configure
|
||||
CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/lensfun \
|
||||
--libdir=${PREFIX}/lib \
|
||||
--vectorization=SSE
|
||||
TEST_PROGS= tfun example
|
||||
|
||||
NO_TEST = Yes
|
||||
do-test:
|
||||
.for p in ${TEST_PROGS}
|
||||
cd ${WRKBUILD}/tests; ./$p
|
||||
.endfor
|
||||
|
||||
CFLAGS+= -I/usr/include
|
||||
MAKE_FILE= GNUmakefile
|
||||
|
||||
ALL_TARGET = all
|
||||
|
||||
SUBST_VARS = MAKE_PROGRAM
|
||||
|
||||
pre-configure:
|
||||
${SUBST_CMD} ${WRKSRC}/configure ${WRKSRC}/tibs.py
|
||||
DOC_DIR= ${PREFIX}/share/doc/lensfun
|
||||
MANUAL_DIR= ${DOC_DIR}/manual
|
||||
|
||||
post-install:
|
||||
mv ${PREFIX}/lib/liblensfun.so \
|
||||
${PREFIX}/lib/liblensfun.so.${LIBlensfun_VERSION}
|
||||
cd ${WRKSRC}/out/posix*/release; \
|
||||
${INSTALL_PROGRAM} tmod ${PREFIX}/bin
|
||||
cd ${PREFIX}/bin; rm ${TEST_PROGS}
|
||||
${INSTALL_DATA_DIR} ${DOC_DIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/README ${DOC_DIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/docs/*-3.0.txt ${DOC_DIR}
|
||||
rm -Rf ${MANUAL_DIR}
|
||||
mv ${PREFIX}/share/doc/${DISTNAME}.* ${MANUAL_DIR}
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
25
graphics/lensfun/patches/patch-CMakeLists_txt
Normal file
25
graphics/lensfun/patches/patch-CMakeLists_txt
Normal file
@ -0,0 +1,25 @@
|
||||
$OpenBSD: patch-CMakeLists_txt,v 1.1 2015/07/05 12:03:34 zhuk Exp $
|
||||
Do not force those values but use cache for them, allowing
|
||||
to override from command line.
|
||||
--- CMakeLists.txt.orig Tue Feb 12 13:52:21 2013
|
||||
+++ CMakeLists.txt Tue Feb 12 13:55:05 2013
|
||||
@@ -73,11 +73,14 @@ IF(BUILD_STATIC)
|
||||
ENDIF()
|
||||
|
||||
# define destination dirs (relative to prefix)
|
||||
-SET(BINDIR bin)
|
||||
-SET(LIBDIR lib${LIB_SUFFIX})
|
||||
-SET(INCLUDEDIR include)
|
||||
-SET(DATADIR share/lensfun)
|
||||
-SET(DOCDIR share/doc/lensfun-${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}.${VERSION_BUGFIX})
|
||||
+SET(BINDIR bin CACHE PATH "Directory for library example programs")
|
||||
+SET(LIBDIR lib${LIB_SUFFIX} CACHE PATH "Directory for library itself")
|
||||
+SET(INCLUDEDIR include CACHE PATH "Directory for library header files")
|
||||
+SET(DATADIR share/lensfun CACHE PATH "Directory for library data files")
|
||||
+
|
||||
+IF(BUILD_DOC)
|
||||
+ SET(DOCDIR share/doc/lensfun-${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}.${VERSION_BUGFIX} CACHE PATH "Directory to put library documentation in")
|
||||
+ENDIF(BUILD_DOC)
|
||||
|
||||
IF(WIN32)
|
||||
# install into place in build-dir
|
@ -0,0 +1,64 @@
|
||||
$OpenBSD: patch-build_CMakeModules_FindGLIB2_cmake,v 1.1 2015/07/05 12:03:34 zhuk Exp $
|
||||
Avoid messing up between paths found by pkg-config and CMake itself.
|
||||
--- build/CMakeModules/FindGLIB2.cmake.orig Mon Oct 8 00:14:34 2012
|
||||
+++ build/CMakeModules/FindGLIB2.cmake Sun Jul 5 05:11:54 2015
|
||||
@@ -1,12 +1,12 @@
|
||||
IF(NOT WIN32)
|
||||
INCLUDE(FindPkgConfig)
|
||||
- PKG_SEARCH_MODULE( GLIB2 REQUIRED glib-2.0 )
|
||||
+ PKG_SEARCH_MODULE( PC_GLIB2 REQUIRED glib-2.0 )
|
||||
ENDIF()
|
||||
|
||||
-IF ( WIN32 OR (NOT GLIB2_FOUND AND NOT PKG_CONFIG_FOUND))
|
||||
FIND_PATH(GLIB2_GLIB2CONFIG_INCLUDE_PATH
|
||||
NAMES glibconfig.h
|
||||
PATHS
|
||||
+ ${PC_GLIB2_LIBDIR}
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
@@ -17,9 +17,10 @@ IF ( WIN32 OR (NOT GLIB2_FOUND AND NOT PKG_CONFIG_FOUN
|
||||
)
|
||||
|
||||
|
||||
- FIND_PATH(GLIB2_INCLUDE_DIRS
|
||||
+ FIND_PATH(GLIB2_INCLUDE_DIR
|
||||
NAMES glib.h
|
||||
PATHS
|
||||
+ ${PC_GLIB2_INCLUDEDIR}
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/opt/local/include
|
||||
@@ -27,9 +28,10 @@ IF ( WIN32 OR (NOT GLIB2_FOUND AND NOT PKG_CONFIG_FOUN
|
||||
PATH_SUFFIXES gtk-2.0 glib-2.0 glib20
|
||||
)
|
||||
|
||||
- FIND_LIBRARY(GLIB2_LIBRARIES
|
||||
+ FIND_LIBRARY(GLIB2_LIBRARY
|
||||
NAMES glib-2.0 glib20 glib
|
||||
PATHS
|
||||
+ ${PC_GLIB2_LIBDIR}
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
@@ -37,17 +39,15 @@ IF ( WIN32 OR (NOT GLIB2_FOUND AND NOT PKG_CONFIG_FOUN
|
||||
${GLIB2_BASE_DIR}/lib
|
||||
)
|
||||
|
||||
- IF(GLIB2_GLIB2CONFIG_INCLUDE_PATH AND GLIB2_INCLUDE_DIRS AND GLIB2_LIBRARIES)
|
||||
- SET( GLIB2_INCLUDE_DIRS ${GLIB2_GLIB2CONFIG_INCLUDE_PATH} ${GLIB2_INCLUDE_DIRS} )
|
||||
- SET( GLIB2_LIBRARIES ${GLIB2_LIBRARIES} )
|
||||
+ IF(GLIB2_GLIB2CONFIG_INCLUDE_PATH AND GLIB2_INCLUDE_DIR AND GLIB2_LIBRARY)
|
||||
+ SET( GLIB2_INCLUDE_DIRS ${GLIB2_GLIB2CONFIG_INCLUDE_PATH} ${GLIB2_INCLUDE_DIR} )
|
||||
+ SET( GLIB2_LIBRARIES ${GLIB2_LIBRARY} )
|
||||
SET( GLIB2_FOUND 1)
|
||||
ELSE()
|
||||
SET( GLIB2_INCLUDE_DIRS )
|
||||
SET( GLIB2_LIBRARIES )
|
||||
SET( GLIB2_FOUND 0)
|
||||
ENDIF()
|
||||
-
|
||||
-ENDIF ()
|
||||
|
||||
#INCLUDE( FindPackageHandleStandardArgs )
|
||||
#FIND_PACKAGE_HANDLE_STANDARD_ARGS( GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_GLIB2CONFIG_INCLUDE_PATH GLIB2_GLIB2_INCLUDE_PATH )
|
@ -1,30 +0,0 @@
|
||||
$OpenBSD: patch-build_tibs_compiler_gcc_mak,v 1.1 2010/09/16 10:05:20 sthen Exp $
|
||||
--- build/tibs/compiler/gcc.mak.orig Wed Mar 24 22:40:12 2010
|
||||
+++ build/tibs/compiler/gcc.mak Wed Apr 7 03:58:13 2010
|
||||
@@ -3,7 +3,7 @@
|
||||
.SUFFIXES: .c .cpp .o .lo .a .pc .pc.in
|
||||
|
||||
GCC.CC ?= gcc -c
|
||||
-GCC.CFLAGS = -pipe -Wall \
|
||||
+GCC.CFLAGS = -Wall \
|
||||
$(GCC.CFLAGS.$(MODE)) $(GCC.CFLAGS.DEF) $(GCC.CFLAGS.INC) $(CFLAGS)
|
||||
GCC.CFLAGS.DEF = $(CFLAGS.DEF)
|
||||
GCC.CFLAGS.INC = $(if $(DIR.INCLUDE.C),-I$(subst :, -I,$(DIR.INCLUDE.C)))
|
||||
@@ -11,7 +11,7 @@ ifneq ($(TARGET),windows)
|
||||
GCC.CFLAGS.SHARED ?= -fPIC
|
||||
endif
|
||||
|
||||
-GCC.CFLAGS.release = -s -O3 -fomit-frame-pointer -funroll-loops
|
||||
+GCC.CFLAGS.release =
|
||||
GCC.CFLAGS.debug = -D__DEBUG__ -g
|
||||
|
||||
ifeq ($(ARCH),arm)
|
||||
@@ -77,7 +77,7 @@ endef
|
||||
LINK.GCC.AR = $(GCC.AR) $(GCC.ARFLAGS) $@ $^
|
||||
LINK.GCC.EXEC = $(GCC.LD) -o $@ $(GCC.LDFLAGS) $(LDFLAGS) $1 $^ $(GCC.LDFLAGS.LIBS) $(LDFLAGS.LIBS) $2
|
||||
define LINK.GCC.SO.VER
|
||||
- $(GCC.LD) -o $@.$(SHARED.$3) $(call GCC.LDFLAGS.SHARED,$(notdir $@).$(basename $(basename $(SHARED.$3))),$(dir $@)) $(GCC.LDFLAGS) $(LDFLAGS) $1 $^ $(GCC.LDFLAGS.LIBS) $(LDFLAGS.LIBS) $2
|
||||
+ $(GCC.LD) -o $@.$(SHARED.$3) $(call GCC.LDFLAGS.SHARED,$(notdir $@).$(SHARED.$3),$(dir $@)) $(GCC.LDFLAGS) $(LDFLAGS) $1 $^ $(GCC.LDFLAGS.LIBS) $(LDFLAGS.LIBS) $2
|
||||
ln -fs $(notdir $@.$(SHARED.$3)) $@.$(basename $(basename $(SHARED.$3)))
|
||||
ln -fs $(notdir $@.$(basename $(basename $(SHARED.$3)))) $@
|
||||
endef
|
@ -1,18 +0,0 @@
|
||||
$OpenBSD: patch-build_tibs_host_posix_mak,v 1.1 2010/09/16 10:05:20 sthen Exp $
|
||||
--- build/tibs/host/posix.mak.orig Mon Mar 22 20:32:47 2010
|
||||
+++ build/tibs/host/posix.mak Wed Apr 7 03:59:08 2010
|
||||
@@ -5,12 +5,12 @@ SHELL := /bin/sh
|
||||
# $1 - file, $2 - target dir, $3 - mode
|
||||
define SINGLE.INSTALL
|
||||
if [ ! -d $2 ]; then install -m 0755 -d $2; fi
|
||||
- if [ -L $1 ]; then cp -d $1 $(patsubst %/,%,$2)/$(notdir $1); else install -m $3 $1 $(patsubst %/,%,$2)/$(notdir $1); fi
|
||||
+ if [ -L $1 ]; then cp -RP $1 $(patsubst %/,%,$2)/$(notdir $1); else install -m $3 $1 $(patsubst %/,%,$2)/$(notdir $1); fi
|
||||
endef
|
||||
|
||||
# $1 - directory, $2 - target dir, $3 - mode for files
|
||||
define SINGLE.INSTALLDIR
|
||||
if [ ! -d $2 ]; then install -m 0755 -d $2; fi
|
||||
- cp -drP $1* $2
|
||||
+ cp -RP $1* $2
|
||||
find $2 -type f -print0 | xargs -0 chmod $3
|
||||
endef
|
@ -1,14 +0,0 @@
|
||||
$OpenBSD: patch-configure,v 1.3 2013/10/26 07:39:19 brad Exp $
|
||||
|
||||
Remove GNU make check since its broken with newer versions.
|
||||
|
||||
--- configure.orig Sun Jan 27 11:51:06 2013
|
||||
+++ configure Sat Oct 26 00:04:35 2013
|
||||
@@ -45,7 +45,6 @@ if tibs.TARGET [0] == "windows":
|
||||
}
|
||||
|
||||
# Check for tools
|
||||
-tibs.check_program ("GNU Make", "make --version", ".*?([0-9\.]+).*", "3.81", True)
|
||||
if tibs.check_program ("makedep", "makedep -V", ".*Version.*?([0-9\.]+).*", "0.1.0"):
|
||||
tibs.add_config_mak ("MAKEDEP", "makedep")
|
||||
makedep = "yes"
|
25
graphics/lensfun/patches/patch-docs_CMakeLists_txt
Normal file
25
graphics/lensfun/patches/patch-docs_CMakeLists_txt
Normal file
@ -0,0 +1,25 @@
|
||||
$OpenBSD: patch-docs_CMakeLists_txt,v 1.1 2015/07/05 12:03:34 zhuk Exp $
|
||||
1. This directory is already covered by BUILD_DOC option, so
|
||||
no reason to not to add "doc" target in build-by-default list;
|
||||
2. Actually depend on configured file, CMake already takes care on
|
||||
depending on source file;
|
||||
3. No need for GLOB, we can simply use "INSTALL(DIRECTORY foo/"
|
||||
syntax here.
|
||||
--- docs/CMakeLists.txt.orig Sun Feb 12 15:19:39 2012
|
||||
+++ docs/CMakeLists.txt Tue Feb 12 13:51:13 2013
|
||||
@@ -12,12 +12,12 @@ CONFIGURE_FILE(doxyfile.in.cmake ${DOXYFILE} @ONLY)
|
||||
|
||||
# now build documentation
|
||||
ADD_CUSTOM_TARGET(doc
|
||||
+ ALL
|
||||
COMMAND "${DOXYGEN_EXECUTABLE}"
|
||||
- DEPENDS doxyfile.in.cmake manual-main.txt ../include/lensfun/lensfun.h.in
|
||||
+ DEPENDS "${DOXYFILE}" manual-main.txt ../include/lensfun/lensfun.h.in
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building documentation with doxygen"
|
||||
)
|
||||
|
||||
# install documentation
|
||||
-FILE(GLOB doc_files "${CMAKE_DOC_OUT}/*.*")
|
||||
-INSTALL(FILES ${doc_files} DESTINATION ${DOCDIR})
|
||||
+INSTALL(DIRECTORY ${CMAKE_DOC_OUT}/ DESTINATION ${DOCDIR})
|
@ -1,6 +1,7 @@
|
||||
$OpenBSD: patch-libs_auxfun_image_cpp,v 1.3 2013/06/05 15:24:19 naddy Exp $
|
||||
--- libs/auxfun/image.cpp.orig Tue May 22 03:55:37 2012
|
||||
+++ libs/auxfun/image.cpp Wed Jun 5 09:12:06 2013
|
||||
$OpenBSD: patch-libs_auxfun_image_cpp,v 1.4 2015/07/05 12:03:34 zhuk Exp $
|
||||
Unbreak compilation.
|
||||
--- libs/auxfun/image.cpp.orig Thu Aug 1 21:24:19 2013
|
||||
+++ libs/auxfun/image.cpp Thu Aug 1 21:28:17 2013
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <zlib.h>
|
||||
#include <png.h>
|
||||
|
@ -1,12 +0,0 @@
|
||||
$OpenBSD: patch-libs_lensfun_lensfun_mak,v 1.2 2010/09/16 10:04:54 sthen Exp $
|
||||
--- libs/lensfun/lensfun.mak.orig Wed Mar 24 01:00:22 2010
|
||||
+++ libs/lensfun/lensfun.mak Wed Apr 7 04:00:06 2010
|
||||
@@ -3,7 +3,7 @@ DESCRIPTION.lensfun = Photographic lens database libra
|
||||
DIR.INCLUDE.C += :include/lensfun
|
||||
TARGETS.lensfun = lensfun$L
|
||||
SRC.lensfun$L := $(wildcard libs/lensfun/*.cpp libs/lensfun/$(TARGET)/*.cpp)
|
||||
-SHARED.lensfun$L = $(if $(SHAREDLIBS),$(CONF_VERSION))
|
||||
+SHARED.lensfun$L = $(LIBlensfun_VERSION)
|
||||
LIBS.lensfun = $(TARGETS.regex)
|
||||
SYSLIBS.lensfun = GLIB_20
|
||||
INSTALL.TARGETS += lensfun
|
@ -1,12 +0,0 @@
|
||||
$OpenBSD: patch-tibs_py,v 1.1 2010/09/16 10:05:20 sthen Exp $
|
||||
--- tibs.py.orig Wed Mar 24 00:51:29 2010
|
||||
+++ tibs.py Wed Apr 7 03:55:25 2010
|
||||
@@ -38,7 +38,7 @@ PROJ = "Unknown"
|
||||
# Version number (major.minor.release)
|
||||
VERSION = "0.0.0"
|
||||
|
||||
-PREFIX = "/usr/local"
|
||||
+PREFIX = "${TRUEPREFIX}"
|
||||
BINDIR = None
|
||||
DATADIR = None
|
||||
SYSCONFDIR = None
|
@ -1,6 +1,12 @@
|
||||
@comment $OpenBSD: PLIST,v 1.5 2013/05/16 09:04:03 sthen Exp $
|
||||
@comment $OpenBSD: PLIST,v 1.6 2015/07/05 12:03:34 zhuk Exp $
|
||||
@bin bin/tmod
|
||||
include/lensfun.h
|
||||
@bin bin/trwxml
|
||||
include/auxfun/
|
||||
include/auxfun/image.h
|
||||
include/auxfun/rgbpixel.h
|
||||
include/lensfun/
|
||||
include/lensfun/lensfun.h
|
||||
@lib lib/libauxfun.so.${LIBauxfun_VERSION}
|
||||
@lib lib/liblensfun.so.${LIBlensfun_VERSION}
|
||||
lib/pkgconfig/lensfun.pc
|
||||
share/doc/lensfun/
|
||||
@ -22,8 +28,6 @@ share/doc/lensfun/manual/credits.html
|
||||
share/doc/lensfun/manual/database.html
|
||||
share/doc/lensfun/manual/dbformat.html
|
||||
share/doc/lensfun/manual/dbsearch.html
|
||||
share/doc/lensfun/manual/dir_417636b0694695296d5af3eb7f0630e3.html
|
||||
share/doc/lensfun/manual/dir_d44c64559bbebec7f509842c48db8b23.html
|
||||
share/doc/lensfun/manual/doxygen.css
|
||||
share/doc/lensfun/manual/doxygen.png
|
||||
share/doc/lensfun/manual/dynsections.js
|
||||
|
Loading…
Reference in New Issue
Block a user