From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50824) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1edyfN-0003iK-73 for guix-patches@gnu.org; Tue, 23 Jan 2018 08:31:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1edyfH-0003MO-04 for guix-patches@gnu.org; Tue, 23 Jan 2018 08:31:09 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:59526) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1edyfG-0003M9-PO for guix-patches@gnu.org; Tue, 23 Jan 2018 08:31:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1edyfG-00059q-G5 for guix-patches@gnu.org; Tue, 23 Jan 2018 08:31:02 -0500 Subject: [bug#30084] [PATCH] gnu: Add urho3d. Resent-Message-ID: From: Oleg Pykhalov References: <87y3l5ic8f.fsf@gmail.com> <87shbbqiq5.fsf@gnu.org> Date: Tue, 23 Jan 2018 16:29:44 +0300 In-Reply-To: <87shbbqiq5.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Fri, 12 Jan 2018 15:01:22 +0100") Message-ID: <87r2qgput3.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 30084@debbugs.gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello Ludovic, Thank you for review! ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Hi Oleg, > > Oleg Pykhalov skribis: > >> From 186090075a1ae515bb4893763e7c528568e15939 Mon Sep 17 00:00:00 2001 >> From: Oleg Pykhalov >> Date: Thu, 11 Jan 2018 01:14:41 +0300 >> Subject: [PATCH] gnu: Add urho3d. >> >> * gnu/packages/game-development.scm (urho3d): New public variable. > > [...] > >> + (lambda* (#:key inputs #:allow-other-keys) >> + (substitute* (string-append "../build/Source/ThirdParty" >> + "/SDL/include/generated/SDL_co= nfig.h") > > IIUC there=E2=80=99s a bundled copy of SDL, right? Can we instead build = against > our SDL? Yes, it's a bundled copy. We probably can, but how? The build system probably configured look for 'Source/ThirdParty/SDL'. So should we make a symbolic link like 'Source/ThirdParty/SDL' -> '/gnu/store/=E2=80=A6-SDL'? I'll check this later. Maybe it will search for a system first SDL and if not find it use their own. Also I have a question about SDL in the following quote. > Ideally, to be safe from bundling, we should =E2=80=9Crm -rf ThirdParty= =E2=80=9D in a > snippet. Is that possible? Unfortunately no. The contents of the 'Source/ThirdParty' has much more than just SDL. It's too much work for now, but a good TODO. Source/ThirdParty/SDL AngelScript Assimp boost Box2D Bullet Civetweb Detour DetourCrowd DetourTileCache FreeType GLEW ik JO kNet LibCpuId LICENSES Lua LuaJIT LZ4 MojoShader Mustache nanodbc PugiXml rapidjson Recast SDL SQLite StanHull STB toluapp WebP Actually I wonder will those libraries and the engine overall play nice with OUR SDL library? Should we provide a Guix version and bundled libraries version? >> + (((string-append "#define SDL_AUDIO_DRIVER_PULSEAUDIO_DY= NAMIC" >> + " \"libpulse-simple\\.so\\.0\"")) >> + (string-append "#define SDL_AUDIO_DRIVER_PULSEAUDIO_DYN= AMIC \"" >> + (assoc-ref inputs "pulseaudio") >> + "/lib/libpulse-simple.so.0" >> + "\""))) > > Please use a literal string in the =E2=80=98substitute*=E2=80=99 pattern = (you can use > backslashes to split it on several lines.) OK. Thanks for notice! >> + (description "Lightweight, cross-platform 2D and 3D game engine >> +implemented in C++. Inspired by OGRE and Horde3D.") > > Full sentences please! :-) > > https://www.gnu.org/software/guix/manual/html_node/Synopses-and-Descrip= tions.html Oh, thanks! > Could you send an updated path? --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-gnu-Add-urho3d.patch Content-Transfer-Encoding: quoted-printable Content-Description: [PATCH] gnu: Add urho3d. From=205a906d8a8a9ff50ed46b5ffc33714b11517e23ca Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 11 Jan 2018 01:14:41 +0300 Subject: [PATCH] gnu: Add urho3d. * gnu/packages/game-development.scm (urho3d): New public variable. =2D-- gnu/packages/game-development.scm | 51 +++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 51 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-developm= ent.scm index 0b08b04f5..3c5eae5cd 100644 =2D-- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1206,3 +1206,54 @@ related games such as Heretic and Hexen. It comes w= ith a 3d preview mode and a 2D editor view.") (home-page "http://eureka-editor.sourceforge.net/") (license license:gpl2+))) + +(define-public urho3d + (package + (name "urho3d") + (version "1.7") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/urho3d/Urho3D" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1im63n9rx8qq1ks6aq6jrl5ikxg87hqhsy06miqc317hpm1iyav5")))) + (build-system cmake-build-system) + (inputs `(("libx11" ,libx11) + ("libxcursor" ,libxcursor) + ("libxext" ,libxext) + ("libxi" ,libxi) + ("libxinerama" ,libxinerama) + ("libxrandr" ,libxrandr) + ("libxrender" ,libxrender) + ("libxscrnsaver" ,libxscrnsaver) + ("mesa" ,mesa) + ("alsa-lib" ,alsa-lib) + ("pulseaudio" ,pulseaudio))) + (arguments + '(#:tests? + #f ; There are no tests + #:phases + (modify-phases %standard-phases + (add-after 'configure 'use-full-library-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "../build/Source/ThirdParty\ +/SDL/include/generated/SDL_config.h" + (("#define SDL_AUDIO_DRIVER_ALSA_DYNAMIC \"libasound\\.so\\= .2\"") + (string-append "#define SDL_AUDIO_DRIVER_ALSA_DYNAMIC \"" + (assoc-ref inputs "alsa-lib") + "/lib/libasound.so.2" + "\"")) + (((string-append "#define SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAM= IC" + " \"libpulse-simple\\.so\\.0\"")) + (string-append "#define SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMI= C \"" + (assoc-ref inputs "pulseaudio") + "/lib/libpulse-simple.so.0" + "\""))) + #t))))) + (home-page "https://urho3d.github.io/") + (synopsis "Cross-platform 2D and 3D game engine") + (description "This package provides a lightweight, cross-platform 2D a= nd +3D game engine implemented in C++. Inspired by OGRE and Horde3D.") + (license license:expat))) =2D-=20 2.15.1 --=-=-= Content-Type: text/plain Oleg. --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIyBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAlpnOMgACgkQckbhHGm3 lWmCxw/1HLkVSGoMFS/t6k1tBn24gSZqf/sWR31i8TjkFumpKiCGBRKhtqsgT1Cb G1RJ8lbGcBtMRT6AErHsb39ZS/yrwaaExKxa11GUbqG3IGnwAClGGcgGmLoLubdH zkGfDvWQ8QP3xWqPq3hD4slz0VVabEsk88c/CL9no/QjROjZMtftaRs50pdy98LQ mKUbDFx1iVIn9feyNuChfQtZiiHD/JGJaOmF2mOmX5Fef66O+BEg9cQkSPMR6ab5 gTZD390JgbNGVjQowwSRk4ljYLKFO+HKePgm1cNzaXAQPe1/pSWtO28HJakxY5Ab U6b4Nj1l0J3yC615zj0m4Diz/Qtm6Juy3fgaSz6jmRdPisJUZkqoklBGqz76Q5X0 PuXNG1RYX0A7HpbN/2LxQcXeic6XWnuJf05bl03lo8InHvYfEVGgPxFjj/8ad4/S VTIZNpgbQegn/EEckykF4FB5Q8Yu2hsuyrT1V9aRJm+Oa3aa5DBxX7bAHRoWhnw7 n/Irgv5GX1wAQeR9y3R62gudqQWuZd1xfIvXe+hz2YxaDX/cVGcbhmBDvfP4SV44 0dmXZ/1XSW1owjaV1nNx2T/YYc0c2+eSBHk4ieHRHft0PsdMljy2ffiGvopmFvRE 0fyxNl71D7ZRP4MfOhCYaQJqBsBcQlifqIkwnJg7byvWdNcXUA== =svEF -----END PGP SIGNATURE----- --==-=-=--