pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/49566: devel/libftdi1 build failure
>Number: 49566
>Category: pkg
>Synopsis: devel/libftdi1 build failure
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Jan 13 19:40:00 +0000 2015
>Originator: Edgar FuÃ?
>Release: pkgsrc-2014Q4
>Organization:
Mathematisches Institut der Universität Bonn
>Description:
While building devel/libftdi1, <Python.h> cannot be found because
it's in include/pythonX.Y, not include.
While there: Arrange for documentation to be built and installed.
While there: Examples shoud go to share/examples.
>How-To-Repeat:
cd devel/libftdi1 && bmake build
>Fix:
Pass PYTHON_INCLUDE_DIR to cmake:
Index: devel/libftdi1/Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/libftdi1/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- devel/libftdi1/Makefile 7 Nov 2014 19:39:29 -0000 1.8
+++ devel/libftdi1/Makefile 13 Jan 2015 18:16:38 -0000
@@ -39,6 +39,7 @@
-DCMAKE_INSTALL_RPATH=${PREFIX}/lib \
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=FALSE \
-DLIBUSB_INCLUDE_DIR=${PREFIX}/include/libusb-1.0 \
+ -DPYTHON_INCLUDE_DIR=${PREFIX}/include/python${PYVERSSUFFIX} \
.)
# -DCMAKE_INSTALL_PREFIX=${PREFIX} converts /usr/local to ${PREFIX}
While there, one can also build and install the documentation:
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/libftdi1/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- Makefile 7 Nov 2014 19:39:29 -0000 1.8
+++ Makefile 13 Jan 2015 19:20:57 -0000
@@ -1,7 +1,7 @@
# $NetBSD: Makefile,v 1.8 2014/11/07 19:39:29 adam Exp $
DISTNAME= libftdi1-1.1
-PKGREVISION= 1
+PKGREVISION= 2
CATEGORIES= devel
MASTER_SITES= http://www.intra2net.com/en/developer/libftdi/download/
EXTRACT_SUFX= .tar.bz2
@@ -20,28 +20,39 @@
PYTHON_VERSIONS_INCOMPATIBLE= 33 34 # not yet ported as of 1.0
BUILD_DEPENDS+=libusb1-[0-9]*:../../devel/libusb1
-# It is better off to have doxygen, but
-# clang segfaults while packaging print/luatex
-#BUILD_DEPENDS+=doxygen-[0-9]*:../../devel/doxygen
+BUILD_DEPENDS+=doxygen-[0-9]*:../../devel/doxygen
PKGCONFIG_OVERRIDE+= libftdi1.pc.in
PKGCONFIG_OVERRIDE+= libftdipp1.pc.in
PLIST_SUBST+= PYSITELIB=${PYSITELIB}
+HTML_DOC_DIR= share/doc/libftdi1
+
+INSTALLATION_DIRS+= man/man3
+INSTALLATION_DIRS+= ${HTML_DOC_DIR}
+
do-configure:
(cd $(WRKSRC) ; \
cmake \
-DEXAMPLES:BOOL=off \
- -DDOCUMENTATION:BOOL=off \
+ -DDOCUMENTATION:BOOL=on \
-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE \
-DCMAKE_INSTALL_PREFIX=${PREFIX} \
-DCMAKE_INSTALL_RPATH=${PREFIX}/lib \
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=FALSE \
-DLIBUSB_INCLUDE_DIR=${PREFIX}/include/libusb-1.0 \
+ -DPYTHON_INCLUDE_DIR=${PREFIX}/include/python${PYVERSSUFFIX} \
.)
# -DCMAKE_INSTALL_PREFIX=${PREFIX} converts /usr/local to ${PREFIX}
+# The upstream makefile builds, but doesn't install the documentation
+post-install:
+.for f in FTDIProgressInfo FTDIStreamState Ftdi Ftdi_Context_Private Ftdi_Eeprom_Private Ftdi_List Ftdi_List_Private ftdi.c ftdi.cpp ftdi.h ftdi.hpp ftdi_context ftdi_device_list ftdi_eeprom ftdi_i.h ftdi_stream.c ftdi_transfer_control ftdi_version_i.h ftdi_version_info libftdi size_and_time
+ ${INSTALL_MAN} ${WRKSRC}/doc/man/man3/${f}.3 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man3
+.endfor
+ ${INSTALL_DATA} ${WRKSRC}/doc/html/* ${DESTDIR}${PREFIX}/${HTML_DOC_DIR}
+
.include "../../devel/boost-headers/buildlink3.mk"
.include "../../devel/boost-libs/buildlink3.mk"
.include "../../devel/libconfuse/buildlink3.mk"
Index: PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/devel/libftdi1/PLIST,v
retrieving revision 1.2
diff -u -r1.2 PLIST
--- PLIST 4 Oct 2014 12:01:08 -0000 1.2
+++ PLIST 13 Jan 2015 19:20:57 -0000
@@ -19,3 +19,160 @@
${PYSITELIB}/ftdi1.py
share/libftdi/examples/complete.py
share/libftdi/examples/simple.py
+man/man3/FTDIProgressInfo.3
+man/man3/FTDIStreamState.3
+man/man3/Ftdi.3
+man/man3/Ftdi_Context_Private.3
+man/man3/Ftdi_Eeprom_Private.3
+man/man3/Ftdi_List.3
+man/man3/Ftdi_List_Private.3
+man/man3/ftdi.c.3
+man/man3/ftdi.cpp.3
+man/man3/ftdi.h.3
+man/man3/ftdi.hpp.3
+man/man3/ftdi_context.3
+man/man3/ftdi_device_list.3
+man/man3/ftdi_eeprom.3
+man/man3/ftdi_i.h.3
+man/man3/ftdi_stream.c.3
+man/man3/ftdi_transfer_control.3
+man/man3/ftdi_version_i.h.3
+man/man3/ftdi_version_info.3
+man/man3/libftdi.3
+man/man3/size_and_time.3
+share/doc/libftdi1/annotated.html
+share/doc/libftdi1/bc_s.png
+share/doc/libftdi1/bdwn.png
+share/doc/libftdi1/classFtdi_1_1Context-members.html
+share/doc/libftdi1/classFtdi_1_1Context.html
+share/doc/libftdi1/classFtdi_1_1Context_1_1Private-members.html
+share/doc/libftdi1/classFtdi_1_1Context_1_1Private.html
+share/doc/libftdi1/classFtdi_1_1Eeprom-members.html
+share/doc/libftdi1/classFtdi_1_1Eeprom.html
+share/doc/libftdi1/classFtdi_1_1Eeprom_1_1Private-members.html
+share/doc/libftdi1/classFtdi_1_1Eeprom_1_1Private.html
+share/doc/libftdi1/classFtdi_1_1List-members.html
+share/doc/libftdi1/classFtdi_1_1List.html
+share/doc/libftdi1/classFtdi_1_1List_1_1Private-members.html
+share/doc/libftdi1/classFtdi_1_1List_1_1Private.html
+share/doc/libftdi1/classes.html
+share/doc/libftdi1/closed.png
+share/doc/libftdi1/dir_000000.html
+share/doc/libftdi1/dir_000001.html
+share/doc/libftdi1/doxygen.css
+share/doc/libftdi1/doxygen.png
+share/doc/libftdi1/dynsections.js
+share/doc/libftdi1/files.html
+share/doc/libftdi1/ftdi_8c.html
+share/doc/libftdi1/ftdi_8c_source.html
+share/doc/libftdi1/ftdi_8cpp.html
+share/doc/libftdi1/ftdi_8cpp_source.html
+share/doc/libftdi1/ftdi_8h.html
+share/doc/libftdi1/ftdi_8h_source.html
+share/doc/libftdi1/ftdi_8hpp.html
+share/doc/libftdi1/ftdi_8hpp_source.html
+share/doc/libftdi1/ftdi__i_8h.html
+share/doc/libftdi1/ftdi__i_8h_source.html
+share/doc/libftdi1/ftdi__stream_8c.html
+share/doc/libftdi1/ftdi__stream_8c_source.html
+share/doc/libftdi1/ftdi__version__i_8h.html
+share/doc/libftdi1/ftdi__version__i_8h_source.html
+share/doc/libftdi1/ftv2blank.png
+share/doc/libftdi1/ftv2doc.png
+share/doc/libftdi1/ftv2folderclosed.png
+share/doc/libftdi1/ftv2folderopen.png
+share/doc/libftdi1/ftv2lastnode.png
+share/doc/libftdi1/ftv2link.png
+share/doc/libftdi1/ftv2mlastnode.png
+share/doc/libftdi1/ftv2mnode.png
+share/doc/libftdi1/ftv2node.png
+share/doc/libftdi1/ftv2plastnode.png
+share/doc/libftdi1/ftv2pnode.png
+share/doc/libftdi1/ftv2splitbar.png
+share/doc/libftdi1/ftv2vertline.png
+share/doc/libftdi1/functions.html
+share/doc/libftdi1/functions_b.html
+share/doc/libftdi1/functions_c.html
+share/doc/libftdi1/functions_d.html
+share/doc/libftdi1/functions_e.html
+share/doc/libftdi1/functions_enum.html
+share/doc/libftdi1/functions_eval.html
+share/doc/libftdi1/functions_f.html
+share/doc/libftdi1/functions_func.html
+share/doc/libftdi1/functions_g.html
+share/doc/libftdi1/functions_h.html
+share/doc/libftdi1/functions_i.html
+share/doc/libftdi1/functions_l.html
+share/doc/libftdi1/functions_m.html
+share/doc/libftdi1/functions_n.html
+share/doc/libftdi1/functions_o.html
+share/doc/libftdi1/functions_p.html
+share/doc/libftdi1/functions_r.html
+share/doc/libftdi1/functions_rela.html
+share/doc/libftdi1/functions_s.html
+share/doc/libftdi1/functions_t.html
+share/doc/libftdi1/functions_type.html
+share/doc/libftdi1/functions_u.html
+share/doc/libftdi1/functions_v.html
+share/doc/libftdi1/functions_vars.html
+share/doc/libftdi1/functions_w.html
+share/doc/libftdi1/functions_~.html
+share/doc/libftdi1/globals.html
+share/doc/libftdi1/globals_b.html
+share/doc/libftdi1/globals_c.html
+share/doc/libftdi1/globals_d.html
+share/doc/libftdi1/globals_defs.html
+share/doc/libftdi1/globals_e.html
+share/doc/libftdi1/globals_enum.html
+share/doc/libftdi1/globals_eval.html
+share/doc/libftdi1/globals_f.html
+share/doc/libftdi1/globals_func.html
+share/doc/libftdi1/globals_g.html
+share/doc/libftdi1/globals_h.html
+share/doc/libftdi1/globals_i.html
+share/doc/libftdi1/globals_l.html
+share/doc/libftdi1/globals_m.html
+share/doc/libftdi1/globals_n.html
+share/doc/libftdi1/globals_o.html
+share/doc/libftdi1/globals_p.html
+share/doc/libftdi1/globals_r.html
+share/doc/libftdi1/globals_s.html
+share/doc/libftdi1/globals_t.html
+share/doc/libftdi1/globals_type.html
+share/doc/libftdi1/globals_u.html
+share/doc/libftdi1/globals_v.html
+share/doc/libftdi1/globals_vars.html
+share/doc/libftdi1/globals_w.html
+share/doc/libftdi1/group__libftdi.html
+share/doc/libftdi1/index.html
+share/doc/libftdi1/jquery.js
+share/doc/libftdi1/modules.html
+share/doc/libftdi1/namespaceFtdi.html
+share/doc/libftdi1/namespaces.html
+share/doc/libftdi1/nav_f.png
+share/doc/libftdi1/nav_g.png
+share/doc/libftdi1/nav_h.png
+share/doc/libftdi1/open.png
+share/doc/libftdi1/structFTDIProgressInfo-members.html
+share/doc/libftdi1/structFTDIProgressInfo.html
+share/doc/libftdi1/structFTDIStreamState-members.html
+share/doc/libftdi1/structFTDIStreamState.html
+share/doc/libftdi1/structftdi__context-members.html
+share/doc/libftdi1/structftdi__context.html
+share/doc/libftdi1/structftdi__device__list-members.html
+share/doc/libftdi1/structftdi__device__list.html
+share/doc/libftdi1/structftdi__eeprom-members.html
+share/doc/libftdi1/structftdi__eeprom.html
+share/doc/libftdi1/structftdi__transfer__control-members.html
+share/doc/libftdi1/structftdi__transfer__control.html
+share/doc/libftdi1/structftdi__version__info-members.html
+share/doc/libftdi1/structftdi__version__info.html
+share/doc/libftdi1/structsize__and__time-members.html
+share/doc/libftdi1/structsize__and__time.html
+share/doc/libftdi1/sync_off.png
+share/doc/libftdi1/sync_on.png
+share/doc/libftdi1/tab_a.png
+share/doc/libftdi1/tab_b.png
+share/doc/libftdi1/tab_h.png
+share/doc/libftdi1/tab_s.png
+share/doc/libftdi1/tabs.css
One more thing: Example should go to share/examples, right?
--- Makefile.1 2015-01-13 20:23:54.000000000 +0100
+++ Makefile 2015-01-13 20:28:15.000000000 +0100
@@ -29,6 +29,7 @@
HTML_DOC_DIR= share/doc/libftdi1
+INSTALLATION_DIRS+= share/examples/libftdi1
INSTALLATION_DIRS+= man/man3
INSTALLATION_DIRS+= ${HTML_DOC_DIR}
patches/patch-python_examples_CMakeLists.txt:
$NetBSD: patch-python_examples_CMakeLists.txt
Install examples into share/examples/libftdi1, not share/examples/libftdi
--- python/examples/CMakeLists.txt.orig 2014-02-05 17:24:11.000000000 +0100
+++ python/examples/CMakeLists.txt 2015-01-13 20:24:49.000000000 +0100
@@ -1,5 +1,5 @@
install ( FILES simple.py complete.py
- DESTINATION share/libftdi/examples
+ DESTINATION share/examples/libftdi1
PERMISSIONS OWNER_READ GROUP_READ WORLD_READ
)
Home |
Main Index |
Thread Index |
Old Index