ports/120178: [PATCH] graphics/cegui: fix DevIL support and other things
Dmitry Marakasov
amdmi3 at amdmi3.ru
Thu Jan 31 04:10:01 UTC 2008
>Number: 120178
>Category: ports
>Synopsis: [PATCH] graphics/cegui: fix DevIL support and other things
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Jan 31 04:10:00 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Dmitry Marakasov
>Release: FreeBSD 7.0-RC1 i386
>Organization:
>Environment:
System: FreeBSD hades.panopticon 7.0-RC1 FreeBSD 7.0-RC1 #0: Sat Jan 5 03:26:52 MSK 2008 root at hades.panopticon:/usr/obj/usr/src/sys/HADES i386
>Description:
Currently, CEGUI is quite broken. First, it cannot detect DevIL:
...
checking for ilLoadL in -lIL... no
checking for iluFlipImage in -lILU... yes
...
Building DevIL Image Codec: no
...
while it should support it (it's listed in port depends, and actually in most cases cegui will be useless without ability to load images).
Next, on some (most of) installations, there will be hidden dependencies and plist will be incorrect, as configure script may automatically detect, for example, additional XML parsers (libxml, expat, xerces) and build+install additional .so files.
This patch does following:
* Correct CPPFLAGS/LDFLAGS so DevIL is detected properly
* Correct ILvoid in DevIL support code (there's no such type in DevIL, guess cegui is a bit outdated?)
* Add more CONFIGURE_ARGS disabling certain features, as they introduce multiple hidden dependencies and drive plist incorrect
While I'm here:
* Make use of PORTDOCS
* Use SF macro
* Make portlint happy (USE_LDCONFIG and whitespace before end of line in PLIST)
* Update and sort plist
* Bump portrevision
>How-To-Repeat:
>Fix:
--- cegui.patch begins here ---
Files cegui.orig/.pkg-plist.swp and cegui/.pkg-plist.swp differ
diff -ruN cegui.orig/Makefile cegui/Makefile
--- cegui.orig/Makefile 2008-01-31 04:23:38.000000000 +0300
+++ cegui/Makefile 2008-01-31 06:07:00.000000000 +0300
@@ -7,9 +7,9 @@
PORTNAME= cegui
PORTVERSION= 0.5.0b
-PORTREVISION= 0
+PORTREVISION= 1
CATEGORIES= graphics devel
-MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITES= SF
MASTER_SITE_SUBDIR=crayzedsgui
DISTNAME= ${PORTNAME:U}-${PORTVERSION}
@@ -20,16 +20,25 @@
pcre.0:${PORTSDIR}/devel/pcre
WRKSRC= ${WRKDIR}/${DISTNAME:S/0b/0/}
-CONFIGURE_ARGS= --without-xerces-c --enable-toluacegui
-CONFIGURE_ENV+= Lua_LIBS="-L${PREFIX}/lib/lua50 -llua -llualib -lm" \
- Lua_CFLAGS="-I${PREFIX}/include/lua50"
-GNU_CONFIGURE= YES
-INSTALLS_SHLIB= YES
-USE_GL= YES
+CONFIGURE_ARGS= --enable-toluacegui --disable-irrlicht-renderer \
+ --disable-corona --enable-devil --disable-freeimage --disable-silly \
+ --disable-libxml --disable-xerces-c --disable-expat
+
+CONFIGURE_ENV+= Lua_LIBS="-L${LOCALBASE}/lib/lua50 -llua -llualib -lm" \
+ Lua_CFLAGS="-I${LOCALBASE}/include/lua50" \
+ LDFLAGS="-L${LOCALBASE}/lib -L${LOCALBASE}/lib/lua50" \
+ CPPFLAGS="-I${LOCALBASE}/include -I${LOCALBASE}/include/lua50"
+GNU_CONFIGURE= yes
+USE_LDCONFIG= yes
+USE_GL= yes
USE_LUA= 5.0
-USE_XLIB= YES
+USE_XLIB= yes
USE_GNOME= gnomehack
+.if !defined(NOPORTDOCS)
+PORTDOCS= README COPYING AUTHORS ChangeLog TODO
+.endif
+
post-patch:
@${REINPLACE_CMD} -e ' \
s|"-lILU.*"|"-lm -L${LOCALBASE}/lib -lILU -lIL $$LIBS"|g; \
@@ -45,11 +54,13 @@
@${REINPLACE_CMD} -e 's|INCLUDES = |&-I${LOCALBASE}/include/lua50 |' \
${WRKSRC}/ScriptingModules/CEGUILua/tolua++bin/Makefile.in \
${WRKSRC}/ScriptingModules/CEGUILua/LuaScriptModule/src/Makefile.in
+ @${REINPLACE_CMD} -e 's|ILvoid|void|g' \
+ ${WRKSRC}/ImageCodecModules/DevILImageCodec/CEGUIDevILImageCodec.cpp
post-install:
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
-.for docfile in README COPYING AUTHORS ChangeLog TODO
+.for docfile in ${PORTDOCS}
@${INSTALL_DATA} ${WRKSRC}/${docfile} ${DOCSDIR}
.endfor
.endif
diff -ruN cegui.orig/pkg-plist cegui/pkg-plist
--- cegui.orig/pkg-plist 2008-01-31 04:23:38.000000000 +0300
+++ cegui/pkg-plist 2008-01-31 06:07:09.000000000 +0300
@@ -1,4 +1,5 @@
bin/tolua++cegui
+include/CEGUI/CEGUI.h
include/CEGUI/CEGUIBase.h
include/CEGUI/CEGUIBoundSlot.h
include/CEGUI/CEGUIColourRect.h
@@ -76,7 +77,8 @@
include/CEGUI/CEGUIXMLParser.h
include/CEGUI/CEGUIXMLSerializer.h
include/CEGUI/CEGUIcolour.h
-include/CEGUI/CEGUI.h
+include/CEGUI/ImageCodecModules/DevILImageCodec/CEGUIDevILImageCodec.h
+include/CEGUI/ImageCodecModules/DevILImageCodec/CEGUIDevILImageCodecModule.h
include/CEGUI/ImageCodecModules/TGAImageCodec/CEGUITGAImageCodec.h
include/CEGUI/ImageCodecModules/TGAImageCodec/CEGUITGAImageCodecModule.h
include/CEGUI/RendererModules/OpenGLGUIRenderer/openglrenderer.h
@@ -171,9 +173,15 @@
lib/libCEGUIBase.la
lib/libCEGUIBase.so
lib/libCEGUIBase.so.1
+lib/libCEGUIDevILImageCodec.la
+lib/libCEGUIDevILImageCodec.so
+lib/libCEGUIDevILImageCodec.so.0
lib/libCEGUIFalagardWRBase.la
lib/libCEGUIFalagardWRBase.so
lib/libCEGUIFalagardWRBase.so.1
+lib/libCEGUILuaScriptModule.la
+lib/libCEGUILuaScriptModule.so
+lib/libCEGUILuaScriptModule.so.1
lib/libCEGUIOpenGLRenderer.la
lib/libCEGUIOpenGLRenderer.so
lib/libCEGUIOpenGLRenderer.so.0
@@ -184,25 +192,17 @@
lib/libCEGUITinyXMLParser.so
lib/libCEGUITinyXMLParser.so.0
lib/libCEGUItoluapp.la
-lib/libCEGUItoluapp.so
+lib/libCEGUItoluapp.so
lib/libCEGUItoluapp.so.1
-lib/libCEGUILuaScriptModule.la
-lib/libCEGUILuaScriptModule.so
-lib/libCEGUILuaScriptModule.so.1
libdata/pkgconfig/CEGUI-OPENGL.pc
libdata/pkgconfig/CEGUI.pc
-%%PORTDOCS%%%%DOCSDIR%%/README
-%%PORTDOCS%%%%DOCSDIR%%/COPYING
-%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
-%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
-%%PORTDOCS%%%%DOCSDIR%%/TODO
- at dirrm include/CEGUI/ImageCodecModules/TGAImageCodec
- at dirrm include/CEGUI/ImageCodecModules
- at dirrm include/CEGUI/RendererModules/OpenGLGUIRenderer
- at dirrm include/CEGUI/RendererModules
+ at dirrm include/CEGUI/falagard
+ at dirrm include/CEGUI/elements
@dirrm include/CEGUI/XMLParserModules/TinyXMLParser
@dirrm include/CEGUI/XMLParserModules
- at dirrm include/CEGUI/elements
- at dirrm include/CEGUI/falagard
+ at dirrm include/CEGUI/RendererModules/OpenGLGUIRenderer
+ at dirrm include/CEGUI/RendererModules
+ at dirrm include/CEGUI/ImageCodecModules/TGAImageCodec
+ at dirrm include/CEGUI/ImageCodecModules/DevILImageCodec
+ at dirrm include/CEGUI/ImageCodecModules
@dirrm include/CEGUI
-%%PORTDOCS%%@dirrm %%DOCSDIR%%
--- cegui.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list