From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Jan 18 12:30:12 2011 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0C09B10656A9 for ; Tue, 18 Jan 2011 12:30:12 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id C1B658FC1C for ; Tue, 18 Jan 2011 12:30:11 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p0ICUBkN020264 for ; Tue, 18 Jan 2011 12:30:11 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p0ICUBC4020261; Tue, 18 Jan 2011 12:30:11 GMT (envelope-from gnats) Resent-Date: Tue, 18 Jan 2011 12:30:11 GMT Resent-Message-Id: <201101181230.p0ICUBC4020261@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Pascal Stumpf Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 47BD810656A8 for ; Tue, 18 Jan 2011 12:21:28 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (unknown [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id 2C7308FC1E for ; Tue, 18 Jan 2011 12:21:28 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p0ICLSax022169 for ; Tue, 18 Jan 2011 12:21:28 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.4/8.14.4/Submit) id p0ICLSQs022152; Tue, 18 Jan 2011 12:21:28 GMT (envelope-from nobody) Message-Id: <201101181221.p0ICLSQs022152@red.freebsd.org> Date: Tue, 18 Jan 2011 12:21:28 GMT From: Pascal Stumpf To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/154111: Fix shlib version of x11-toolkits/irrlicht X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2011 12:30:12 -0000 >Number: 154111 >Category: ports >Synopsis: Fix shlib version of x11-toolkits/irrlicht >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 18 12:30:10 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Pascal Stumpf >Release: >Organization: >Environment: >Description: Irrlicht currently has an invalid shlib version (1.7.2). This diff brings version numbering under our own control and enables us to actually use Irrlicht in LIB_DEPENDS, avoiding an ugly hack where one would have to add it to both BUILD_DEPENDS and RUN_DEPENDS. It will probably have to be bumped on each minor release. Inspired by a suggestion of Matthias Kilian on ports@openbsd.org. >How-To-Repeat: >Fix: --- Makefile.orig 2011-01-18 13:07:58.413337109 +0100 +++ Makefile 2011-01-18 13:08:58.843477498 +0100 @@ -7,6 +7,7 @@ PORTNAME= supertuxkart PORTVERSION= 0.7 +PORTREVISION= 1 CATEGORIES= games MASTER_SITES= SF/supertuxkart/SuperTuxKart/${PORTVERSION} EXTRACT_SUFX= -src.tar.bz2 @@ -16,9 +17,8 @@ LIB_DEPENDS= vorbisfile.6:${PORTSDIR}/audio/libvorbis \ ogg.7:${PORTSDIR}/audio/libogg \ - fribidi.3:${PORTSDIR}/converters/fribidi -BUILD_DEPENDS= ${LOCALBASE}/lib/libIrrlicht.so:${PORTSDIR}/x11-toolkits/irrlicht -RUN_DEPENDS= ${LOCALBASE}/lib/libIrrlicht.so:${PORTSDIR}/x11-toolkits/irrlicht + fribidi.3:${PORTSDIR}/converters/fribidi \ + Irrlicht.1:${PORTSDIR}/x11-toolkits/irrlicht USE_BZIP2= yes USE_GL= gl glu glut Patch attached with submission follows: diff -urN irrlicht.orig/Makefile irrlicht/Makefile --- irrlicht.orig/Makefile 2010-12-13 21:04:36.000000000 +0100 +++ irrlicht/Makefile 2011-01-18 12:59:18.946139275 +0100 @@ -7,6 +7,7 @@ PORTNAME= irrlicht PORTVERSION= 1.7.2 +PORTREVIDION= 1 CATEGORIES= x11-toolkits graphics MASTER_SITES= SF/${PORTNAME}/Irrlicht%20SDK/1.7/${PORTVERSION} @@ -22,11 +23,13 @@ USE_GL= yes USE_LDCONFIG= yes +MAKE_ENV+= SHLIB_VER=${SHARED_LIB_VER} + PLIST_SUB+= SHARED_LIB_VER=${SHARED_LIB_VER} SUB_FILES= pkg-message BUILD_WRKSRC= ${WRKSRC}/source/Irrlicht -SHARED_LIB_VER= ${PORTVERSION} +SHARED_LIB_VER= 1 EXAMPLEDIRS= 01.HelloWorld 02.Quake3Map 03.CustomSceneNode 04.Movement 05.UserInterface \ 06.2DGraphics 07.Collision 08.SpecialFX 09.Meshviewer 10.Shaders \ 11.PerPixelLighting 12.TerrainRendering 13.RenderToTexture 15.LoadIrrFile \ diff -urN irrlicht.orig/files/patch-include_IrrCompileConfig.h irrlicht/files/patch-include_IrrCompileConfig.h --- irrlicht.orig/files/patch-include_IrrCompileConfig.h 2010-12-13 21:04:36.000000000 +0100 +++ irrlicht/files/patch-include_IrrCompileConfig.h 2011-01-18 13:01:01.549376227 +0100 @@ -1,6 +1,14 @@ ---- include/IrrCompileConfig.h 2010-12-13 13:05:25.000000000 -0500 -+++ include/IrrCompileConfig.h 2010-12-13 13:09:57.000000000 -0500 -@@ -176,7 +176,7 @@ +--- include/IrrCompileConfig.h.orig 2011-01-18 12:59:32.500170720 +0100 ++++ include/IrrCompileConfig.h 2011-01-18 12:59:32.818170690 +0100 +@@ -94,7 +94,6 @@ + #endif + + //! Define _IRR_COMPILE_WITH_JOYSTICK_SUPPORT_ if you want joystick events. +-#define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_ + + //! Maximum number of texture an SMaterial can have, up to 8 are supported by Irrlicht. + #define _IRR_MATERIAL_MAX_TEXTURES_ 4 +@@ -176,7 +175,7 @@ the engine will no longer read .jpeg ima //! Define _IRR_USE_NON_SYSTEM_JPEG_LIB_ to let irrlicht use the jpeglib which comes with irrlicht. /** If this is commented out, Irrlicht will try to compile using the jpeg lib installed in the system. This is only used when _IRR_COMPILE_WITH_LIBJPEG_ is defined. */ @@ -9,7 +17,7 @@ //! Define _IRR_COMPILE_WITH_LIBPNG_ to enable compiling the engine using libpng. -@@ -187,7 +187,7 @@ +@@ -187,7 +186,7 @@ the engine will no longer read .png imag //! Define _IRR_USE_NON_SYSTEM_LIBPNG_ to let irrlicht use the libpng which comes with irrlicht. /** If this is commented out, Irrlicht will try to compile using the libpng installed in the system. This is only used when _IRR_COMPILE_WITH_LIBPNG_ is defined. */ @@ -18,7 +26,7 @@ //! Define _IRR_D3D_NO_SHADER_DEBUGGING to disable shader debugging in D3D9 -@@ -348,14 +348,14 @@ +@@ -348,14 +347,14 @@ ones. */ /** If this is commented out, Irrlicht will try to compile using the zlib installed on the system. This is only used when _IRR_COMPILE_WITH_ZLIB_ is defined. */ diff -urN irrlicht.orig/files/patch-source-Irrlicht_Makefile irrlicht/files/patch-source-Irrlicht_Makefile --- irrlicht.orig/files/patch-source-Irrlicht_Makefile 2010-12-13 21:04:36.000000000 +0100 +++ irrlicht/files/patch-source-Irrlicht_Makefile 1970-01-01 01:00:00.000000000 +0100 @@ -1,111 +0,0 @@ ---- source/Irrlicht/Makefile 2010-12-13 14:40:13.000000000 -0500 -+++ source/Irrlicht/Makefile 2010-12-13 14:46:13.000000000 -0500 -@@ -3,7 +3,7 @@ - VERSION_RELEASE = 2 - VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_RELEASE) - # Irrlicht Engine 1.7.2 --# Makefile for Linux -+# Makefile for FreeBSD/Linux - # - # To use, just run: - # -@@ -39,33 +39,32 @@ - IRRIOOBJ = CFileList.o CFileSystem.o CLimitReadFile.o CMemoryFile.o CReadFile.o CWriteFile.o CXMLReader.o CXMLWriter.o CZipReader.o CPakReader.o CNPKReader.o CTarReader.o CMountPointReader.o irrXML.o CAttributes.o lzma/LzmaDec.o - IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o - IRRGUIOBJ = CGUIButton.o CGUICheckBox.o CGUIComboBox.o CGUIContextMenu.o CGUIEditBox.o CGUIEnvironment.o CGUIFileOpenDialog.o CGUIFont.o CGUIImage.o CGUIInOutFader.o CGUIListBox.o CGUIMenu.o CGUIMeshViewer.o CGUIMessageBox.o CGUIModalScreen.o CGUIScrollBar.o CGUISpinBox.o CGUISkin.o CGUIStaticText.o CGUITabControl.o CGUITable.o CGUIToolBar.o CGUIWindow.o CGUIColorSelectDialog.o CDefaultGUIElementFactory.o CGUISpriteBank.o CGUIImageList.o CGUITreeView.o --ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o --JPEGLIBOBJ = jpeglib/jcapimin.o jpeglib/jcapistd.o jpeglib/jccoefct.o jpeglib/jccolor.o jpeglib/jcdctmgr.o jpeglib/jchuff.o jpeglib/jcinit.o jpeglib/jcmainct.o jpeglib/jcmarker.o jpeglib/jcmaster.o jpeglib/jcomapi.o jpeglib/jcparam.o jpeglib/jcprepct.o jpeglib/jcsample.o jpeglib/jctrans.o jpeglib/jdapimin.o jpeglib/jdapistd.o jpeglib/jdatadst.o jpeglib/jdatasrc.o jpeglib/jdcoefct.o jpeglib/jdcolor.o jpeglib/jddctmgr.o jpeglib/jdhuff.o jpeglib/jdinput.o jpeglib/jdmainct.o jpeglib/jdmarker.o jpeglib/jdmaster.o jpeglib/jdmerge.o jpeglib/jdpostct.o jpeglib/jdsample.o jpeglib/jdtrans.o jpeglib/jerror.o jpeglib/jfdctflt.o jpeglib/jfdctfst.o jpeglib/jfdctint.o jpeglib/jidctflt.o jpeglib/jidctfst.o jpeglib/jidctint.o jpeglib/jmemmgr.o jpeglib/jmemnobs.o jpeglib/jquant1.o jpeglib/jquant2.o jpeglib/jutils.o jpeglib/jcarith.o jpeglib/jdarith.o jpeglib/jaricom.o --LIBPNGOBJ = libpng/png.o libpng/pngerror.o libpng/pngget.o libpng/pngmem.o libpng/pngpread.o libpng/pngread.o libpng/pngrio.o libpng/pngrtran.o libpng/pngrutil.o libpng/pngset.o libpng/pngtrans.o libpng/pngwio.o libpng/pngwrite.o libpng/pngwtran.o libpng/pngwutil.o -+#ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o -+#JPEGLIBOBJ = jpeglib/jcapimin.o jpeglib/jcapistd.o jpeglib/jccoefct.o jpeglib/jccolor.o jpeglib/jcdctmgr.o jpeglib/jchuff.o jpeglib/jcinit.o jpeglib/jcmainct.o jpeglib/jcmarker.o jpeglib/jcmaster.o jpeglib/jcomapi.o jpeglib/jcparam.o jpeglib/jcprepct.o jpeglib/jcsample.o jpeglib/jctrans.o jpeglib/jdapimin.o jpeglib/jdapistd.o jpeglib/jdatadst.o jpeglib/jdatasrc.o jpeglib/jdcoefct.o jpeglib/jdcolor.o jpeglib/jddctmgr.o jpeglib/jdhuff.o jpeglib/jdinput.o jpeglib/jdmainct.o jpeglib/jdmarker.o jpeglib/jdmaster.o jpeglib/jdmerge.o jpeglib/jdpostct.o jpeglib/jdsample.o jpeglib/jdtrans.o jpeglib/jerror.o jpeglib/jfdctflt.o jpeglib/jfdctfst.o jpeglib/jfdctint.o jpeglib/jidctflt.o jpeglib/jidctfst.o jpeglib/jidctint.o jpeglib/jmemmgr.o jpeglib/jmemnobs.o jpeglib/jquant1.o jpeglib/jquant2.o jpeglib/jutils.o jpeglib/jcarith.o jpeglib/jdarith.o jpeglib/jaricom.o -+#LIBPNGOBJ = libpng/png.o libpng/pngerror.o libpng/pngget.o libpng/pngmem.o libpng/pngpread.o libpng/pngread.o libpng/pngrio.o libpng/pngrtran.o libpng/pngrutil.o libpng/pngset.o libpng/pngtrans.o libpng/pngwio.o libpng/pngwrite.o libpng/pngwtran.o libpng/pngwutil.o - LIBAESGM = aesGladman/aescrypt.o aesGladman/aeskey.o aesGladman/aestab.o aesGladman/fileenc.o aesGladman/hmac.o aesGladman/prng.o aesGladman/pwd2key.o aesGladman/sha1.o aesGladman/sha2.o --BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o bzip2/bzcompress.o bzip2/decompress.o bzip2/bzlib.o -+#BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o bzip2/bzcompress.o bzip2/decompress.o bzip2/bzlib.o - - # Next variable is for additional scene nodes etc. of customized Irrlicht versions - EXTRAOBJ = - LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \ - $(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \ -- $(IRRGUIOBJ) $(ZLIBOBJ) $(JPEGLIBOBJ) $(LIBPNGOBJ) $(LIBAESGM) \ -- $(BZIP2OBJ) $(EXTRAOBJ) -+ $(IRRGUIOBJ) $(LIBAESGM) $(BZIP2OBJ) $(EXTRAOBJ) - - ############### - #Compiler flags --CXXINCS = -I../../include -Izlib -Ijpeglib -Ilibpng -+CXXINCS = -I../../include -I$(LOCALBASE)/include -I/usr/include - CPPFLAGS += $(CXXINCS) -DIRRLICHT_EXPORTS=1 - CXXFLAGS += -Wall -pipe -fno-exceptions -fno-rtti -fstrict-aliasing - ifndef NDEBUG - CXXFLAGS += -g -D_DEBUG - else --CXXFLAGS += -fexpensive-optimizations -O3 -+CXXFLAGS += -fexpensive-optimizations - endif - ifdef PROFILE - CXXFLAGS += -pg - endif --CFLAGS := -O3 -fexpensive-optimizations -DPNG_THREAD_UNSAFE_OK -DPNG_NO_MMX_CODE -DPNG_NO_MNG_FEATURES -+#CFLAGS := -O3 -fexpensive-optimizations -DPNG_THREAD_UNSAFE_OK -DPNG_NO_MMX_CODE -DPNG_NO_MNG_FEATURES - - sharedlib sharedlib_osx: CXXFLAGS += -fPIC - sharedlib sharedlib_osx: CFLAGS += -fPIC -@@ -75,15 +74,15 @@ - LIBSELECT=64 - endif - --#Linux specific options --staticlib sharedlib install: SYSTEM = Linux -+# FreeBSD/Linux specific options -+staticlib sharedlib install: SYSTEM = FreeBSD - STATIC_LIB = libIrrlicht.a - LIB_PATH = ../../lib/$(SYSTEM) --INSTALL_DIR = /usr/local/lib -+INSTALL_DIR = $(PREFIX)/lib - sharedlib install: SHARED_LIB = libIrrlicht.so - staticlib sharedlib: LDFLAGS += --no-export-all-symbols --add-stdcall-alias --sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm --staticlib sharedlib: CXXINCS += -I/usr/X11R6/include -+sharedlib: LDFLAGS += -L/usr/lib -L$(LOCALBASE)/lib -lGL -lXxf86vm -lpng -ljpeg -+staticlib sharedlib: CXXINCS += -I$(LOCALBASE)/include - - #OSX specific options - staticlib_osx sharedlib_osx install_osx: SYSTEM = MacOSX -@@ -103,12 +102,12 @@ - staticlib_win32: CPPFLAGS += -D_IRR_STATIC_LIB_ - - #################### --# All target, builds Irrlicht as static lib (libIrrlicht.a) and copies it into lib/Linux --all linux: staticlib -+# All target, builds Irrlicht as static lib (libIrrlicht.a) and copies it into lib/FreeBSD -+all linux: staticlib sharedlib - --# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into lib/Linux -+# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into lib/FreeBSD - sharedlib: $(LINKOBJ) -- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(SHARED_LIB).$(VERSION_MAJOR).$(VERSION_MINOR) -o $(SHARED_LIB).$(VERSION) $^ $(LDFLAGS) -+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(SHARED_LIB).$(VERSION) -o $(SHARED_LIB).$(VERSION) $^ $(LDFLAGS) - mkdir -p $(LIB_PATH) - cp $(SHARED_LIB).$(VERSION) $(LIB_PATH) - -@@ -116,7 +115,7 @@ - $(STATIC_LIB): $(LINKOBJ) - $(AR) rs $@ $^ - --# Copies static lib into lib/Linux -+# Copies static lib into lib/FreeBSD - staticlib staticlib_osx: $(STATIC_LIB) - mkdir -p $(LIB_PATH) - cp $^ $(LIB_PATH) -@@ -165,8 +164,8 @@ - - help: - @echo "Available targets for Irrlicht" -- @echo " sharedlib: Build shared library Irrlicht.so for Linux" -- @echo " staticlib: Build static library Irrlicht.a for Linux" -+ @echo " sharedlib: Build shared library Irrlicht.so for FreeBSD/Linux" -+ @echo " staticlib: Build static library Irrlicht.a for FreeBSD/Linux" - @echo " install: Copy shared library to /usr/local/lib" - @echo "" - @echo " sharedlib_win32: Build shared library Irrlicht.dll for Windows" diff -urN irrlicht.orig/files/patch-source_Irrlicht_Makefile irrlicht/files/patch-source_Irrlicht_Makefile --- irrlicht.orig/files/patch-source_Irrlicht_Makefile 1970-01-01 01:00:00.000000000 +0100 +++ irrlicht/files/patch-source_Irrlicht_Makefile 2011-01-18 13:01:01.562375345 +0100 @@ -0,0 +1,112 @@ +--- source/Irrlicht/Makefile.orig 2011-01-18 12:59:32.115168764 +0100 ++++ source/Irrlicht/Makefile 2011-01-18 13:00:20.726282913 +0100 +@@ -3,7 +3,7 @@ VERSION_MINOR = 7 + VERSION_RELEASE = 2 + VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_RELEASE) + # Irrlicht Engine 1.7.2 +-# Makefile for Linux ++# Makefile for FreeBSD/Linux + # + # To use, just run: + # +@@ -39,33 +39,32 @@ IRRSWRENDEROBJ = CSoftwareDriver.o CSoft + IRRIOOBJ = CFileList.o CFileSystem.o CLimitReadFile.o CMemoryFile.o CReadFile.o CWriteFile.o CXMLReader.o CXMLWriter.o CZipReader.o CPakReader.o CNPKReader.o CTarReader.o CMountPointReader.o irrXML.o CAttributes.o lzma/LzmaDec.o + IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o + IRRGUIOBJ = CGUIButton.o CGUICheckBox.o CGUIComboBox.o CGUIContextMenu.o CGUIEditBox.o CGUIEnvironment.o CGUIFileOpenDialog.o CGUIFont.o CGUIImage.o CGUIInOutFader.o CGUIListBox.o CGUIMenu.o CGUIMeshViewer.o CGUIMessageBox.o CGUIModalScreen.o CGUIScrollBar.o CGUISpinBox.o CGUISkin.o CGUIStaticText.o CGUITabControl.o CGUITable.o CGUIToolBar.o CGUIWindow.o CGUIColorSelectDialog.o CDefaultGUIElementFactory.o CGUISpriteBank.o CGUIImageList.o CGUITreeView.o +-ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o +-JPEGLIBOBJ = jpeglib/jcapimin.o jpeglib/jcapistd.o jpeglib/jccoefct.o jpeglib/jccolor.o jpeglib/jcdctmgr.o jpeglib/jchuff.o jpeglib/jcinit.o jpeglib/jcmainct.o jpeglib/jcmarker.o jpeglib/jcmaster.o jpeglib/jcomapi.o jpeglib/jcparam.o jpeglib/jcprepct.o jpeglib/jcsample.o jpeglib/jctrans.o jpeglib/jdapimin.o jpeglib/jdapistd.o jpeglib/jdatadst.o jpeglib/jdatasrc.o jpeglib/jdcoefct.o jpeglib/jdcolor.o jpeglib/jddctmgr.o jpeglib/jdhuff.o jpeglib/jdinput.o jpeglib/jdmainct.o jpeglib/jdmarker.o jpeglib/jdmaster.o jpeglib/jdmerge.o jpeglib/jdpostct.o jpeglib/jdsample.o jpeglib/jdtrans.o jpeglib/jerror.o jpeglib/jfdctflt.o jpeglib/jfdctfst.o jpeglib/jfdctint.o jpeglib/jidctflt.o jpeglib/jidctfst.o jpeglib/jidctint.o jpeglib/jmemmgr.o jpeglib/jmemnobs.o jpeglib/jquant1.o jpeglib/jquant2.o jpeglib/jutils.o jpeglib/jcarith.o jpeglib/jdarith.o jpeglib/jaricom.o +-LIBPNGOBJ = libpng/png.o libpng/pngerror.o libpng/pngget.o libpng/pngmem.o libpng/pngpread.o libpng/pngread.o libpng/pngrio.o libpng/pngrtran.o libpng/pngrutil.o libpng/pngset.o libpng/pngtrans.o libpng/pngwio.o libpng/pngwrite.o libpng/pngwtran.o libpng/pngwutil.o ++#ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o ++#JPEGLIBOBJ = jpeglib/jcapimin.o jpeglib/jcapistd.o jpeglib/jccoefct.o jpeglib/jccolor.o jpeglib/jcdctmgr.o jpeglib/jchuff.o jpeglib/jcinit.o jpeglib/jcmainct.o jpeglib/jcmarker.o jpeglib/jcmaster.o jpeglib/jcomapi.o jpeglib/jcparam.o jpeglib/jcprepct.o jpeglib/jcsample.o jpeglib/jctrans.o jpeglib/jdapimin.o jpeglib/jdapistd.o jpeglib/jdatadst.o jpeglib/jdatasrc.o jpeglib/jdcoefct.o jpeglib/jdcolor.o jpeglib/jddctmgr.o jpeglib/jdhuff.o jpeglib/jdinput.o jpeglib/jdmainct.o jpeglib/jdmarker.o jpeglib/jdmaster.o jpeglib/jdmerge.o jpeglib/jdpostct.o jpeglib/jdsample.o jpeglib/jdtrans.o jpeglib/jerror.o jpeglib/jfdctflt.o jpeglib/jfdctfst.o jpeglib/jfdctint.o jpeglib/jidctflt.o jpeglib/jidctfst.o jpeglib/jidctint.o jpeglib/jmemmgr.o jpeglib/jmemnobs.o jpeglib/jquant1.o jpeglib/jquant2.o jpeglib/jutils.o jpeglib/jcarith.o jpeglib/jdarith.o jpeglib/jaricom.o ++#LIBPNGOBJ = libpng/png.o libpng/pngerror.o libpng/pngget.o libpng/pngmem.o libpng/pngpread.o libpng/pngread.o libpng/pngrio.o libpng/pngrtran.o libpng/pngrutil.o libpng/pngset.o libpng/pngtrans.o libpng/pngwio.o libpng/pngwrite.o libpng/pngwtran.o libpng/pngwutil.o + LIBAESGM = aesGladman/aescrypt.o aesGladman/aeskey.o aesGladman/aestab.o aesGladman/fileenc.o aesGladman/hmac.o aesGladman/prng.o aesGladman/pwd2key.o aesGladman/sha1.o aesGladman/sha2.o +-BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o bzip2/bzcompress.o bzip2/decompress.o bzip2/bzlib.o ++#BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o bzip2/bzcompress.o bzip2/decompress.o bzip2/bzlib.o + + # Next variable is for additional scene nodes etc. of customized Irrlicht versions + EXTRAOBJ = + LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \ + $(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \ +- $(IRRGUIOBJ) $(ZLIBOBJ) $(JPEGLIBOBJ) $(LIBPNGOBJ) $(LIBAESGM) \ +- $(BZIP2OBJ) $(EXTRAOBJ) ++ $(IRRGUIOBJ) $(LIBAESGM) $(BZIP2OBJ) $(EXTRAOBJ) + + ############### + #Compiler flags +-CXXINCS = -I../../include -Izlib -Ijpeglib -Ilibpng ++CXXINCS = -I../../include -I$(LOCALBASE)/include -I/usr/include + CPPFLAGS += $(CXXINCS) -DIRRLICHT_EXPORTS=1 + CXXFLAGS += -Wall -pipe -fno-exceptions -fno-rtti -fstrict-aliasing + ifndef NDEBUG + CXXFLAGS += -g -D_DEBUG + else +-CXXFLAGS += -fexpensive-optimizations -O3 ++CXXFLAGS += -fexpensive-optimizations + endif + ifdef PROFILE + CXXFLAGS += -pg + endif +-CFLAGS := -O3 -fexpensive-optimizations -DPNG_THREAD_UNSAFE_OK -DPNG_NO_MMX_CODE -DPNG_NO_MNG_FEATURES ++#CFLAGS := -O3 -fexpensive-optimizations -DPNG_THREAD_UNSAFE_OK -DPNG_NO_MMX_CODE -DPNG_NO_MNG_FEATURES + + sharedlib sharedlib_osx: CXXFLAGS += -fPIC + sharedlib sharedlib_osx: CFLAGS += -fPIC +@@ -75,15 +74,15 @@ ifeq ($(HOSTTYPE), x86_64) + LIBSELECT=64 + endif + +-#Linux specific options +-staticlib sharedlib install: SYSTEM = Linux ++# FreeBSD/Linux specific options ++staticlib sharedlib install: SYSTEM = FreeBSD + STATIC_LIB = libIrrlicht.a + LIB_PATH = ../../lib/$(SYSTEM) +-INSTALL_DIR = /usr/local/lib ++INSTALL_DIR = $(PREFIX)/lib + sharedlib install: SHARED_LIB = libIrrlicht.so + staticlib sharedlib: LDFLAGS += --no-export-all-symbols --add-stdcall-alias +-sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm +-staticlib sharedlib: CXXINCS += -I/usr/X11R6/include ++sharedlib: LDFLAGS += -L/usr/lib -L$(LOCALBASE)/lib -lGL -lXxf86vm -lpng -ljpeg ++staticlib sharedlib: CXXINCS += -I$(LOCALBASE)/include + + #OSX specific options + staticlib_osx sharedlib_osx install_osx: SYSTEM = MacOSX +@@ -103,20 +102,20 @@ sharedlib_win32 staticlib_win32: CPPFLAG + staticlib_win32: CPPFLAGS += -D_IRR_STATIC_LIB_ + + #################### +-# All target, builds Irrlicht as static lib (libIrrlicht.a) and copies it into lib/Linux +-all linux: staticlib ++# All target, builds Irrlicht as static lib (libIrrlicht.a) and copies it into lib/FreeBSD ++all linux: staticlib sharedlib + +-# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into lib/Linux ++# Builds Irrlicht as shared lib (libIrrlicht.so.versionNumber) and copies it into lib/FreeBSD + sharedlib: $(LINKOBJ) +- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(SHARED_LIB).$(VERSION_MAJOR).$(VERSION_MINOR) -o $(SHARED_LIB).$(VERSION) $^ $(LDFLAGS) ++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(SHARED_LIB).$(SHLIB_VER) -o $(SHARED_LIB).$(SHLIB_VER) $^ $(LDFLAGS) + mkdir -p $(LIB_PATH) +- cp $(SHARED_LIB).$(VERSION) $(LIB_PATH) ++ cp $(SHARED_LIB).$(SHLIB_VER) $(LIB_PATH) + + # Builds Irrlicht as static lib (libIrrlicht.a) + $(STATIC_LIB): $(LINKOBJ) + $(AR) rs $@ $^ + +-# Copies static lib into lib/Linux ++# Copies static lib into lib/FreeBSD + staticlib staticlib_osx: $(STATIC_LIB) + mkdir -p $(LIB_PATH) + cp $^ $(LIB_PATH) +@@ -165,8 +164,8 @@ endif + + help: + @echo "Available targets for Irrlicht" +- @echo " sharedlib: Build shared library Irrlicht.so for Linux" +- @echo " staticlib: Build static library Irrlicht.a for Linux" ++ @echo " sharedlib: Build shared library Irrlicht.so for FreeBSD/Linux" ++ @echo " staticlib: Build static library Irrlicht.a for FreeBSD/Linux" + @echo " install: Copy shared library to /usr/local/lib" + @echo "" + @echo " sharedlib_win32: Build shared library Irrlicht.dll for Windows" >Release-Note: >Audit-Trail: >Unformatted: