aboutsummaryrefslogblamecommitdiff
path: root/sysutils/openipmi/Makefile
blob: 01372e39ff6a10817608e9b704bb254861b8d7e5 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                 

                        
                      
                        
                                                       

                                       
                                   

                                                
                     
                                 
 
                                     
 



                                                                 
                   
                             
 
                                                            

                              





                                                            
                                            
                                              



                                         
                    

      

                           
                                                       




                                                   
                        
           




                                                     
                            
                                  
                                                  
                                                                                               
                                                                          






                                           
                         
                           
                             




                                                                     

                                      
                                             

      
                           
                              


                                                   
                                       
                                      
     
                                                       
                                               

      
                        
                           

                                                              
                                                            





                                       
                         
                                                 

      
                           

                              
                                                      
                               
     
                                        

      
           
                                                                            
                                           
                                                 





                                                     
                                     
                                             

                                                                            
 



                                                                                                 
                      
# Created by: Alex Deiter <alex.deiter@gmail.com>

PORTNAME=	openipmi
PORTVERSION=	2.0.29
CATEGORIES=	sysutils
MASTER_SITES=	SF/${PORTNAME}/OpenIPMI%202.0%20Library
DISTNAME=	OpenIPMI-${PORTVERSION}

MAINTAINER=	egypcio@FreeBSD.org
COMMENT=	Complex IPMI management software

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/COPYING

LIB_DEPENDS=	libpopt.so:devel/popt

USES=		gmake libtool localbase:ldflags ncurses pathfix \
		pkgconfig readline
USE_LDCONFIG=	yes

GNU_CONFIGURE=	yes
INSTALL_TARGET=	install-strip

OPTIONS_DEFINE=	GDBM GLIB20 PERL PYTHON SNMP SSL TCL TKINTER
TKINTER_IMPLIES=	PYTHON

SSL_DESC=	IPMI 2.0 RMCP+ encryption and authentication
SNMP_DESC=	SNMP trap support for the sample programs
PERL_DESC=	Perl interface for OpenIPMI library
PYTHON_DESC=	Python interface for OpenIPMI library
TCL_DESC=	TCL interface for OpenIPMI library
TKINTER_DESC=	GUI for OpenIPMI, written in Python
GDBM_DESC=	Local SDR caching on startup
GLIB20_DESC=	Simply OS handler for glib 2.0

.include <bsd.port.options.mk>

.if exists(${LOCALBASE}/lib/libgdbm.so.3)
PORT_OPTIONS+=	GDBM
.endif

.if ${PORT_OPTIONS:MSNMP}
PORT_OPTIONS+=		SSL
LIB_DEPENDS+=		libnetsnmp.so:net-mgmt/net-snmp
CONFIGURE_ARGS+=	--with-ucdsnmp=${LOCALBASE}
.else
CONFIGURE_ARGS+=	--with-ucdsnmp=no
.endif

.if ${PORT_OPTIONS:MSSL}
USES+=	ssl
CONFIGURE_ARGS+=	--with-openssl=${OPENSSLBASE}
.else
CONFIGURE_ARGS+=	--with-openssl=no
.endif

.if ${PORT_OPTIONS:MTKINTER}
USES+=			shebangfix
SHEBANG_FILES=		swig/python/openipmigui.py
BUILD_DEPENDS+=		${PYTHON_PKGNAMEPREFIX}tkinter>0:x11-toolkits/py-tkinter@${PY_FLAVOR} \
			${LOCALBASE}/lib/Tix8.4.3/Tix.tcl:x11-toolkits/tix
CONFIGURE_ARGS+=	--with-tkinter
PLIST_SUB+=		TKINTER=""
.else
CONFIGURE_ARGS+=	--with-tkinter=no
PLIST_SUB+=		TKINTER="@comment "
.endif

.if ${PORT_OPTIONS:MPERL}
WITH_SWIG=		yes
USES+=			perl5
CONFIGURE_ARGS+=	--with-perl ac_cv_path_perlprog=${PERL}
LDFLAGS+=		-L${SITE_ARCH}
LIBS+=			-L${SITE_ARCH}
PLIST_SUB+=		OIPMIPERL=""
EXTRA_PATCHES+=		${PATCHDIR}/extra-patch-swig_perl_Makefile.in
.else
CONFIGURE_ARGS+=	--with-perl=no
PLIST_SUB+=		OIPMIPERL="@comment "
.endif

.if ${PORT_OPTIONS:MPYTHON}
USES+=			python
USE_PYTHON=		py3kplist
CONFIGURE_ARGS+=	--with-python --with-swig
CONFIGURE_ENV+=	ac_cv_path_pythonprog=${PYTHON_CMD}
BUILD_DEPENDS+=		swig:devel/swig
PLIST_SUB+=		OIPMIPYTHON=""
.else
CONFIGURE_ARGS+=	--with-python=no --with-swig=no
PLIST_SUB+=		OIPMIPYTHON="@comment "
.endif

.if ${PORT_OPTIONS:MTCL}
USES+=			tcl
CONFIGURE_ARGS+=	--with-tcl \
			--with-tclcflags=-I${TCL_INCLUDEDIR} \
			--with-tcllibs=-ltcl${TCL_SHLIB_VER}
PLIST_SUB+=		TCL=""
.else
CONFIGURE_ARGS+=	--with-tcl=no
PLIST_SUB+=		TCL="@comment "
.endif

.if ${PORT_OPTIONS:MGDBM}
LIB_DEPENDS+=		libgdbm.so:databases/gdbm
.endif

.if ${PORT_OPTIONS:MGLIB20}
USES+=			gnome
USE_GNOME+=		glib20
CONFIGURE_ARGS+=	--with-glib --with-glibver=2.0
PLIST_SUB+=		GLIB=""
.else
PLIST_SUB+=		GLIB="@comment "
.endif

post-patch:
	${REINPLACE_CMD} '/libOpenIPMIutils_la_LIBADD =/s/$$/ -lexecinfo/' \
		${WRKSRC}/utils/Makefile.in
	${REINPLACE_CMD} 's|malloc.h|stdlib.h|' \
		${WRKSRC}/lanserv/sdrcomp/sdrcomp.c \
		${WRKSRC}/lanserv/extcmd.c \
		${WRKSRC}/lanserv/bmc_app.c \
		${WRKSRC}/lanserv/bmc_storage.c \
		${WRKSRC}/lanserv/bmc_picmg.c \
		${WRKSRC}/lanserv/bmc_sensor.c
	${REINPLACE_CMD} 's|-ldl||' \
		${WRKSRC}/lanserv/Makefile.in
	${REINPLACE_CMD} 's|editline/readline.h|edit/readline/readline.h|' \
		${WRKSRC}/sample/ipmi_serial_bmc_emu.c

do-install-PYTHON-on:
	@${PYTHON_CMD} -m compileall -d ${PYTHON_SITELIBDIR} ${STAGEDIR}${PYTHON_SITELIBDIR} && \
	  ${PYTHON_CMD} -O -m compileall -d ${PYTHON_SITELIBDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}

.include <bsd.port.mk>