From 49900c0be3ee81b535431126aa9b063f549018c6 Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 18 Sep 2012 09:11:23 +0200
Subject: [PATCH 001/125] Fixed: Compilation under unices (syslog.h included
before chat_displayer.h creates a conflict with LOG_WARNING)
---
code/ryzom/client/src/interface_v3/chat_displayer.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/code/ryzom/client/src/interface_v3/chat_displayer.h b/code/ryzom/client/src/interface_v3/chat_displayer.h
index f98ed79f8..875859b78 100644
--- a/code/ryzom/client/src/interface_v3/chat_displayer.h
+++ b/code/ryzom/client/src/interface_v3/chat_displayer.h
@@ -25,6 +25,11 @@
#include "nel/misc/mutex.h"
+// to fix a conflict with syslog.h being included by libwww
+#ifdef LOG_WARNING
+#undef LOG_WARNING
+#endif
+
/**
* class used to display console text commands in the chat window
* \author Nicolas Brigand
From 3f764df03eab0a028c673758ed7f41b0fccbbeff Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 19 Sep 2012 19:38:37 +0200
Subject: [PATCH 002/125] Added: shape2obj project to convert NeL .shape to
standard .obj file format
---
code/nel/tools/3d/shape2obj/main.cpp | 668 +++++++++++++++++++++++++++
1 file changed, 668 insertions(+)
create mode 100644 code/nel/tools/3d/shape2obj/main.cpp
diff --git a/code/nel/tools/3d/shape2obj/main.cpp b/code/nel/tools/3d/shape2obj/main.cpp
new file mode 100644
index 000000000..91945bdb6
--- /dev/null
+++ b/code/nel/tools/3d/shape2obj/main.cpp
@@ -0,0 +1,668 @@
+// NeL - MMORPG Framework
+// Copyright (C) 2010 Winch Gate Property Limited
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+
+using namespace NLMISC;
+using namespace NL3D;
+using namespace std;
+
+struct CVertex
+{
+ CVector vertex;
+ CVector normal;
+ CUV uv;
+};
+
+bool operator == (const CVertex &v1, const CVertex &v2)
+{
+ return (v1.vertex == v2.vertex) && (v1.normal == v2.normal) && (v1.uv == v2.uv);
+}
+
+bool operator < (const CVertex &v1, const CVertex &v2)
+{
+ return (v1.vertex < v2.vertex);
+}
+
+const CIndexBuffer *getRdrPassPrimitiveBlock(const CMeshMRMGeom *mesh, uint lodId, uint renderPass)
+{
+ return &(mesh->getRdrPassPrimitiveBlock(lodId, renderPass));
+}
+
+// ***************************************************************************
+
+const CIndexBuffer *getRdrPassPrimitiveBlock(const CMeshMRMSkinnedGeom *mesh, uint lodId, uint renderPass)
+{
+ static CIndexBuffer block;
+ mesh->getRdrPassPrimitiveBlock(lodId, renderPass, block);
+ return █
+}
+
+// ***************************************************************************
+
+bool ProcessMeshMRMSkinned(const std::string &filename, IShape *shapeMesh);
+bool ProcessMeshMRM(const std::string &filename, IShape *shapeMesh);
+bool ProcessMesh(const std::string &filename, IShape *shapeMesh);
+
+int main(int argc, char* argv[])
+{
+ if (argc < 2)
+ {
+ cout << "Syntax : shape2obj " << endl;
+
+ return 1;
+ }
+
+ if (!NLMISC::INelContext::isContextInitialised()) new NLMISC::CApplicationContext();
+
+ registerSerial3d();
+ CScene::registerBasics();
+
+ IShape *shapeMesh = NULL;
+
+ CIFile ifile;
+
+ // Sream a shape
+ CShapeStream streamShape;
+
+ string filename = argv[1];
+
+ if (!ifile.open(filename)) return 1;
+
+ try
+ {
+ // Stream it
+ streamShape.serial(ifile);
+
+ // Add the shape
+ shapeMesh = streamShape.getShapePointer();
+ }
+ catch (Exception& e)
+ {
+ cout << "Error : " << e.what() << endl;
+
+ return 1;
+ }
+
+ if (ProcessMeshMRMSkinned(filename, shapeMesh)) return 0;
+ if (ProcessMeshMRM(filename, shapeMesh)) return 0;
+ if (ProcessMesh(filename, shapeMesh)) return 0;
+
+ return 0;
+}
+
+bool ProcessMeshMRMSkinned(const std::string &filename, IShape *shapeMesh)
+{
+ CMeshMRMSkinned *mesh = dynamic_cast(shapeMesh);
+
+ if (!mesh) return false;
+
+ COFile ofile;
+
+ CMeshMRMSkinnedGeom* meshIn = (CMeshMRMSkinnedGeom*)&mesh->getMeshGeom();
+
+ std::vector skinWeights;
+ meshIn->getSkinWeights(skinWeights);
+ CVertexBuffer vertexBuffer;
+ meshIn->getVertexBuffer(vertexBuffer);
+
+ CVertexBufferRead vba;
+ vertexBuffer.lock (vba);
+ uint i, j;
+
+ // **** Select the Lod.
+ uint numLods= meshIn->getNbLod();
+
+ // get the max tris displayed
+ float numMeshFacesMin= (float)meshIn->getLevelDetail().MinFaceUsed;
+ float numMeshFacesMax= (float)meshIn->getLevelDetail().MaxFaceUsed;
+ // find the lod
+ sint lodId = numLods-1;
+
+ // **** First, for the best lod indicate what vertex is used or not. Also index geomorphs to know what real vertex is used
+ vector vertexUsed;
+ // -1 means "not used"
+ vertexUsed.resize(skinWeights.size(), -1);
+ // Parse all triangles.
+ for(i=0;igetNbRdrPass(lodId); ++i)
+ {
+ const CIndexBuffer *pb = getRdrPassPrimitiveBlock(meshIn, lodId, i);
+ CIndexBufferRead iba;
+ pb->lock (iba);
+ if (iba.getFormat() == CIndexBuffer::Indices32)
+ {
+ const uint32 *triPtr= (const uint32 *) iba.getPtr();
+ for(j=0;jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Flag the vertex with its own index => used.
+ vertexUsed[idx]= idx;
+ triPtr++;
+ }
+ }
+ else
+ {
+ const uint16 *triPtr= (const uint16 *) iba.getPtr();
+ for(j=0;jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Flag the vertex with its own index => used.
+ vertexUsed[idx]= idx;
+ triPtr++;
+ }
+ }
+ }
+ // Special for Geomorphs: must take The End target vertex.
+ const std::vector &geomorphs= meshIn->getGeomorphs(lodId);
+ for(i=0;i shadowVertices;
+ vector vertexToVSkin;
+ vertexToVSkin.resize(vertexUsed.size());
+ shadowVertices.reserve(vertexUsed.size());
+ // use a map to remove duplicates (because of UV/normal discontinuities before!!)
+ map shadowVertexMap;
+ uint numMerged= 0;
+ // Skip Geomorphs.
+ for(i=geomorphs.size();imaxW)
+ {
+ matId= sw.MatrixId[j];
+ maxW= sw.Weights[j];
+ }
+ }
+// shadowVert.MatrixId= matId;
+*/
+ // If dont find the shadowVertex in the map.
+ map::iterator it= shadowVertexMap.find(shadowVert);
+ if(it==shadowVertexMap.end())
+ {
+ // Append
+ uint index= shadowVertices.size();
+ vertexToVSkin[i]= index;
+ shadowVertices.push_back(shadowVert);
+ shadowVertexMap.insert(make_pair(shadowVert, index));
+ }
+ else
+ {
+ // Ok, map.
+ vertexToVSkin[i]= it->second;
+ numMerged++;
+ }
+
+ }
+ }
+
+ ofstream ofs(string(filename + ".obj").c_str());
+
+ for(size_t y = 0; y < shadowVertices.size(); ++y)
+ {
+ CVector v = shadowVertices[y].vertex;
+ CVector vn = shadowVertices[y].normal;
+ CUV vt = shadowVertices[y].uv;
+
+ ofs << "v " << v.x << " " << v.y << " " << v.z << endl;
+ ofs << "vn " << vn.x << " " << vn.y << " " << vn.z << endl;
+ ofs << "vt " << vt.U << " " << vt.V << endl;
+ }
+
+ // **** Get All Faces
+ // Final List Of Triangles that match the bone.
+ vector shadowTriangles;
+ shadowTriangles.reserve(1000);
+ // Parse all input tri of the mesh.
+ for(i=0; igetNbRdrPass(lodId); ++i)
+ {
+ ofs << "g pass" << i << endl;
+
+ const CIndexBuffer *pb = getRdrPassPrimitiveBlock(meshIn, lodId, i);
+ CIndexBufferRead iba;
+ pb->lock (iba);
+ if (iba.getFormat() == CIndexBuffer::Indices32)
+ {
+ const uint32 *triPtr= (const uint32 *) iba.getPtr();
+
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+ else
+ {
+ const uint16 *triPtr= (const uint16 *) iba.getPtr();
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+
+ for(size_t pass = 0; pass(shapeMesh);
+
+ if (!mesh) return false;
+
+ COFile ofile;
+
+ CMeshMRMGeom* meshIn = (CMeshMRMGeom*)&mesh->getMeshGeom();
+
+ std::vector skinWeights = meshIn->getSkinWeights();
+ CVertexBuffer vertexBuffer = meshIn->getVertexBuffer();
+
+ CVertexBufferRead vba;
+ vertexBuffer.lock (vba);
+ uint i, j;
+
+ // **** Select the Lod.
+ uint numLods= meshIn->getNbLod();
+
+ // get the max tris displayed
+ float numMeshFacesMin= (float)meshIn->getLevelDetail().MinFaceUsed;
+ float numMeshFacesMax= (float)meshIn->getLevelDetail().MaxFaceUsed;
+ // find the lod
+ sint lodId = numLods-1;
+
+ // **** First, for the best lod indicate what vertex is used or not. Also index geomorphs to know what real vertex is used
+ vector vertexUsed;
+ // -1 means "not used"
+ vertexUsed.resize(skinWeights.size(), -1);
+ // Parse all triangles.
+ for(i=0;igetNbRdrPass(lodId); ++i)
+ {
+ const CIndexBuffer *pb = getRdrPassPrimitiveBlock(meshIn, lodId, i);
+ CIndexBufferRead iba;
+ pb->lock (iba);
+ if (iba.getFormat() == CIndexBuffer::Indices32)
+ {
+ const uint32 *triPtr= (const uint32 *) iba.getPtr();
+ for(j=0;jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Flag the vertex with its own index => used.
+ vertexUsed[idx]= idx;
+ triPtr++;
+ }
+ }
+ else
+ {
+ const uint16 *triPtr= (const uint16 *) iba.getPtr();
+ for(j=0;jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Flag the vertex with its own index => used.
+ vertexUsed[idx]= idx;
+ triPtr++;
+ }
+ }
+ }
+ // Special for Geomorphs: must take The End target vertex.
+ const std::vector &geomorphs= meshIn->getGeomorphs(lodId);
+ for(i=0;i shadowVertices;
+ vector vertexToVSkin;
+ vertexToVSkin.resize(vertexUsed.size());
+ shadowVertices.reserve(vertexUsed.size());
+ // use a map to remove duplicates (because of UV/normal discontinuities before!!)
+ map shadowVertexMap;
+ uint numMerged= 0;
+ // Skip Geomorphs.
+ for(i=geomorphs.size();imaxW)
+ {
+ matId= sw.MatrixId[j];
+ maxW= sw.Weights[j];
+ }
+ }
+// shadowVert.MatrixId= matId;
+*/
+ // If dont find the shadowVertex in the map.
+ map::iterator it= shadowVertexMap.find(shadowVert);
+ if(it==shadowVertexMap.end())
+ {
+ // Append
+ uint index= shadowVertices.size();
+ vertexToVSkin[i]= index;
+ shadowVertices.push_back(shadowVert);
+ shadowVertexMap.insert(make_pair(shadowVert, index));
+ }
+ else
+ {
+ // Ok, map.
+ vertexToVSkin[i]= it->second;
+ numMerged++;
+ }
+
+ }
+ }
+
+ ofstream ofs(string(filename + ".obj").c_str());
+
+ for(size_t y = 0; y < shadowVertices.size(); ++y)
+ {
+ CVector v = shadowVertices[y].vertex;
+ CVector vn = shadowVertices[y].normal;
+ CUV vt = shadowVertices[y].uv;
+
+ ofs << "v " << v.x << " " << v.y << " " << v.z << endl;
+ ofs << "vn " << vn.x << " " << vn.y << " " << vn.z << endl;
+ ofs << "vt " << vt.U << " " << vt.V << endl;
+ }
+
+ // **** Get All Faces
+ // Final List Of Triangles that match the bone.
+ vector shadowTriangles;
+ shadowTriangles.reserve(1000);
+ // Parse all input tri of the mesh.
+ for(i=0; igetNbRdrPass(lodId); ++i)
+ {
+ ofs << "g pass" << i << endl;
+
+ const CIndexBuffer *pb = getRdrPassPrimitiveBlock(meshIn, lodId, i);
+ CIndexBufferRead iba;
+ pb->lock (iba);
+ if (iba.getFormat() == CIndexBuffer::Indices32)
+ {
+ const uint32 *triPtr= (const uint32 *) iba.getPtr();
+
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+ else
+ {
+ const uint16 *triPtr= (const uint16 *) iba.getPtr();
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+
+ for(size_t pass = 0; pass(shapeMesh);
+
+ if (!mesh) return false;
+
+ COFile ofile;
+
+ CMeshGeom* meshIn = (CMeshGeom*)&mesh->getMeshGeom();
+
+ CVertexBuffer vertexBuffer = meshIn->getVertexBuffer();
+
+// CVertexBufferRead vba;
+// vertexBuffer.lock (vba);
+
+ uint i = vertexBuffer.getNumVertices();
+
+ std::vector vertices;
+ meshIn->retrieveVertices(vertices);
+
+ std::vector indices;
+ meshIn->retrieveTriangles(indices);
+
+
+ // **** For all vertices used (not geomorphs), compute vertex Skins.
+ vector shadowVertices;
+ vector vertexToVSkin;
+ vertexToVSkin.resize(indices.size());
+ shadowVertices.reserve(indices.size());
+ // use a map to remove duplicates (because of UV/normal discontinuities before!!)
+ map shadowVertexMap;
+ uint numMerged= 0;
+ // Skip Geomorphs.
+ for(i=0;imaxW)
+ {
+ matId= sw.MatrixId[j];
+ maxW= sw.Weights[j];
+ }
+ }
+
+ // If dont find the shadowVertex in the map.
+ map::iterator it= shadowVertexMap.find(shadowVert);
+ if(it==shadowVertexMap.end())
+ {
+ // Append
+ uint index= shadowVertices.size();
+ vertexToVSkin[i]= index;
+ shadowVertices.push_back(shadowVert);
+ shadowVertexMap.insert(make_pair(shadowVert, index));
+ }
+ else
+ {
+ // Ok, map.
+ vertexToVSkin[i]= it->second;
+ numMerged++;
+ }
+ }
+
+ ofstream ofs(string(filename + ".obj").c_str());
+
+ for(size_t y = 0; y < shadowVertices.size(); ++y)
+ {
+ CVector v = shadowVertices[y].vertex;
+ CVector vn = shadowVertices[y].normal;
+ CUV vt = shadowVertices[y].uv;
+
+ ofs << "v " << v.x << " " << v.y << " " << v.z << endl;
+ ofs << "vn " << vn.x << " " << vn.y << " " << vn.z << endl;
+ ofs << "vt " << vt.U << " " << vt.V << endl;
+ }
+
+ // **** Get All Faces
+ // Final List Of Triangles that match the bone.
+ vector shadowTriangles;
+ shadowTriangles.reserve(1000);
+ // Parse all input tri of the mesh.
+ for(i=0; igetNbRdrPass(lodId); ++i)
+ {
+ ofs << "g pass" << i << endl;
+
+ const CIndexBuffer *pb = getRdrPassPrimitiveBlock(meshIn, lodId, i);
+ CIndexBufferRead iba;
+ pb->lock (iba);
+ if (iba.getFormat() == CIndexBuffer::Indices32)
+ {
+ const uint32 *triPtr= (const uint32 *) iba.getPtr();
+
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+ else
+ {
+ const uint16 *triPtr= (const uint16 *) iba.getPtr();
+ for(j=0; jgetNumIndexes(); ++j)
+ {
+ uint idx= *triPtr;
+ // Get the real Vertex (ie not the geomporhed one).
+ idx= vertexUsed[idx];
+ // Get the ShadowVertex associated
+ idx= vertexToVSkin[idx];
+
+ shadowTriangles.push_back(idx);
+ triPtr++;
+ }
+ }
+
+ for(size_t pass = 0; pass
Date: Sat, 22 Sep 2012 21:07:35 +0200
Subject: [PATCH 003/125] Fixed: ryzom.xpm should be 32x32 instead of 48x48
---
code/ryzom/client/unix/ryzom.xpm | 2005 +++++++++++-------------------
1 file changed, 694 insertions(+), 1311 deletions(-)
diff --git a/code/ryzom/client/unix/ryzom.xpm b/code/ryzom/client/unix/ryzom.xpm
index 5e6ef89df..fe7c972f2 100644
--- a/code/ryzom/client/unix/ryzom.xpm
+++ b/code/ryzom/client/unix/ryzom.xpm
@@ -1,1313 +1,696 @@
/* XPM */
-static char * ryzom_48x48_xpm[] = {
-"48 48 1262 2",
+static char * ryzom_32x32_xpm[] = {
+"32 32 661 2",
" c None",
-". c #AAB2A8",
-"+ c #A6ABAF",
-"@ c #79868A",
-"# c #6A7B81",
-"$ c #A6ABAA",
-"% c #ADB0AF",
-"& c #AAAFA9",
-"* c #C8D2CE",
-"= c #838679",
-"- c #5F6159",
-"; c #656766",
-"> c #636365",
-", c #504E50",
-"' c #646464",
-") c #7E8180",
-"! c #9B988B",
-"~ c #6D695B",
-"{ c #636564",
-"] c #535843",
-"^ c #686A54",
-"/ c #7E7D70",
-"( c #717262",
-"_ c #556056",
-": c #47493B",
-"< c #423E30",
-"[ c #413629",
-"} c #323229",
-"| c #424039",
-"1 c #5E5D56",
-"2 c #656560",
-"3 c #A8AAA7",
-"4 c #989795",
-"5 c #76726D",
-"6 c #888074",
-"7 c #807256",
-"8 c #675B47",
-"9 c #4B442E",
-"0 c #808076",
-"a c #8C8A7D",
-"b c #817962",
-"c c #4F4F36",
-"d c #4A5535",
-"e c #515E3E",
-"f c #434736",
-"g c #4C483F",
-"h c #6E634E",
-"i c #434233",
-"j c #4A4943",
-"k c #585347",
-"l c #797367",
-"m c #938B85",
-"n c #908781",
-"o c #746860",
-"p c #605349",
-"q c #897C6E",
-"r c #958C81",
-"s c #746953",
-"t c #6C5E46",
-"u c #665B43",
-"v c #756852",
-"w c #84847B",
-"x c #AEB2AD",
-"y c #737661",
-"z c #49492E",
-"A c #3A361F",
-"B c #33371D",
-"C c #34381F",
-"D c #3D4028",
-"E c #475131",
-"F c #524F45",
-"G c #7C7F76",
-"H c #7D725E",
-"I c #7E6847",
-"J c #51534E",
-"K c #4F5B5F",
-"L c #3A3833",
-"M c #332B18",
-"N c #37331D",
-"O c #51432D",
-"P c #393326",
-"Q c #423728",
-"R c #55482E",
-"S c #53482F",
-"T c #565436",
-"U c #727660",
-"V c #888B7F",
-"W c #88897C",
-"X c #6E714C",
-"Y c #6B724A",
-"Z c #555B3A",
-"` c #4B3D1D",
-" . c #363119",
-".. c #4B572D",
-"+. c #536838",
-"@. c #4C5740",
-"#. c #4A3B24",
-"$. c #795F3F",
-"%. c #604D32",
-"&. c #2E2D18",
-"*. c #413C2D",
-"=. c #808276",
-"-. c #535C54",
-";. c #474D43",
-">. c #3C3E37",
-",. c #353A30",
-"'. c #807246",
-"). c #4B5329",
-"!. c #606F31",
-"~. c #525730",
-"{. c #73735E",
-"]. c #8E9080",
-"^. c #87887D",
-"/. c #B7B6B6",
-"(. c #858281",
-"_. c #515941",
-":. c #707C5F",
-"<. c #656754",
-"[. c #626A4B",
-"}. c #645E3E",
-"|. c #3C4023",
-"1. c #44512E",
-"2. c #38462C",
-"3. c #21230E",
-"4. c #29270D",
-"5. c #382E14",
-"6. c #39341B",
-"7. c #524C33",
-"8. c #53524A",
-"9. c #645F55",
-"0. c #48452C",
-"a. c #464521",
-"b. c #5D522D",
-"c. c #716F3B",
-"d. c #5C642A",
-"e. c #51602B",
-"f. c #37481B",
-"g. c #33381E",
-"h. c #5C5B3B",
-"i. c #514D2F",
-"j. c #4D462D",
-"k. c #3F3A30",
-"l. c #35352B",
-"m. c #4C4C43",
-"n. c #5B5B4A",
-"o. c #91978B",
-"p. c #9CA19B",
-"q. c #B0B7AB",
-"r. c #898D77",
-"s. c #51593C",
-"t. c #2F3B22",
-"u. c #919162",
-"v. c #464529",
-"w. c #5F6031",
-"x. c #545925",
-"y. c #464E1F",
-"z. c #373E23",
-"A. c #585235",
-"B. c #664F2F",
-"C. c #3E3A23",
-"D. c #595D35",
-"E. c #666D38",
-"F. c #75743D",
-"G. c #636931",
-"H. c #6E6B39",
-"I. c #3D371C",
-"J. c #222711",
-"K. c #161A0E",
-"L. c #353A24",
-"M. c #6B7054",
-"N. c #7D7F67",
-"O. c #978C75",
-"P. c #696450",
-"Q. c #78786D",
-"R. c #89887D",
-"S. c #929591",
-"T. c #52534E",
-"U. c #5D5F5D",
-"V. c #4B4E48",
-"W. c #45493C",
-"X. c #3F4533",
-"Y. c #181C0D",
-"Z. c #53512E",
-"`. c #7D9042",
-" + c #74903B",
-".+ c #475525",
-"++ c #4A5428",
-"@+ c #534528",
-"#+ c #513B1E",
-"$+ c #554825",
-"%+ c #494E26",
-"&+ c #6E833A",
-"*+ c #576B2A",
-"=+ c #353E1D",
-"-+ c #383D20",
-";+ c #6F5B35",
-">+ c #303017",
-",+ c #2E2C17",
-"'+ c #454426",
-")+ c #737A49",
-"!+ c #6D6F4B",
-"~+ c #5A6140",
-"{+ c #727260",
-"]+ c #AFA799",
-"^+ c #DDDFDA",
-"/+ c #ECEDEC",
-"(+ c #8F8F8D",
-"_+ c #3C3E34",
-":+ c #323623",
-"<+ c #212415",
-"[+ c #212712",
-"}+ c #1C220F",
-"|+ c #252310",
-"1+ c #231E0C",
-"2+ c #2F3317",
-"3+ c #5C632E",
-"4+ c #5E6C33",
-"5+ c #465A22",
-"6+ c #3D4022",
-"7+ c #453921",
-"8+ c #433E1D",
-"9+ c #615C31",
-"0+ c #3F471F",
-"a+ c #545831",
-"b+ c #586136",
-"c+ c #29281A",
-"d+ c #322F1B",
-"e+ c #6B5836",
-"f+ c #706134",
-"g+ c #7F6B41",
-"h+ c #83693F",
-"i+ c #8F7846",
-"j+ c #5C5B2B",
-"k+ c #76804B",
-"l+ c #6F7D47",
-"m+ c #8C9178",
-"n+ c #999188",
-"o+ c #B0AAA8",
-"p+ c #C7C6C6",
-"q+ c #A29FA0",
-"r+ c #9C9D95",
-"s+ c #686E53",
-"t+ c #414924",
-"u+ c #373E1E",
-"v+ c #303721",
-"w+ c #343928",
-"x+ c #212314",
-"y+ c #363220",
-"z+ c #2D3215",
-"A+ c #333515",
-"B+ c #5C4F2D",
-"C+ c #5F5232",
-"D+ c #2D2715",
-"E+ c #31381A",
-"F+ c #55592F",
-"G+ c #4C552A",
-"H+ c #677B43",
-"I+ c #799250",
-"J+ c #74864A",
-"K+ c #656F46",
-"L+ c #635637",
-"M+ c #79683A",
-"N+ c #968251",
-"O+ c #665B33",
-"P+ c #7D7840",
-"Q+ c #616A32",
-"R+ c #4C4F29",
-"S+ c #4C562E",
-"T+ c #556539",
-"U+ c #595F44",
-"V+ c #4D4D44",
-"W+ c #6A6561",
-"X+ c #95908F",
-"Y+ c #74706F",
-"Z+ c #797573",
-"`+ c #595B4C",
-" @ c #4E5532",
-".@ c #5D603D",
-"+@ c #797059",
-"@@ c #655136",
-"#@ c #5B5342",
-"$@ c #504E3F",
-"%@ c #3D461C",
-"&@ c #21270E",
-"*@ c #24280D",
-"=@ c #141005",
-"-@ c #191909",
-";@ c #3D3A1C",
-">@ c #454425",
-",@ c #425024",
-"'@ c #323C1B",
-")@ c #506232",
-"!@ c #7F9A5B",
-"~@ c #75804F",
-"{@ c #727F46",
-"]@ c #635E36",
-"^@ c #837443",
-"/@ c #70562B",
-"(@ c #505129",
-"_@ c #454923",
-":@ c #2E3019",
-"<@ c #353920",
-"[@ c #353B26",
-"}@ c #404236",
-"|@ c #98978C",
-"1@ c #D6D4D2",
-"2@ c #AFADA7",
-"3@ c #8F8784",
-"4@ c #7C7875",
-"5@ c #A2A39D",
-"6@ c #7E7D77",
-"7@ c #868B7F",
-"8@ c #A1A296",
-"9@ c #5C5142",
-"0@ c #553720",
-"a@ c #543F33",
-"b@ c #5F4A3A",
-"c@ c #372A15",
-"d@ c #657D32",
-"e@ c #373D1B",
-"f@ c #2C2B12",
-"g@ c #343311",
-"h@ c #3E3214",
-"i@ c #392811",
-"j@ c #3D3518",
-"k@ c #393F1B",
-"l@ c #2D3416",
-"m@ c #5C713C",
-"n@ c #678048",
-"o@ c #47512F",
-"p@ c #677346",
-"q@ c #515132",
-"r@ c #6B613A",
-"s@ c #5D582D",
-"t@ c #444224",
-"u@ c #474B28",
-"v@ c #5E5E37",
-"w@ c #666B44",
-"x@ c #999C81",
-"y@ c #CDCBC5",
-"z@ c #E5E1DE",
-"A@ c #BEB9BA",
-"B@ c #A9A3A0",
-"C@ c #756D65",
-"D@ c #877F79",
-"E@ c #B2AFAA",
-"F@ c #BEBEBA",
-"G@ c #9FA19C",
-"H@ c #443C2E",
-"I@ c #302413",
-"J@ c #301F0E",
-"K@ c #27201A",
-"L@ c #331D11",
-"M@ c #432D13",
-"N@ c #2D280F",
-"O@ c #424F20",
-"P@ c #1A1C0B",
-"Q@ c #2F2E16",
-"R@ c #54471F",
-"S@ c #4F2E13",
-"T@ c #1E0804",
-"U@ c #542F14",
-"V@ c #6F6534",
-"W@ c #596332",
-"X@ c #6F7444",
-"Y@ c #645C32",
-"Z@ c #526031",
-"`@ c #434C2B",
-" # c #4E5730",
-".# c #48462A",
-"+# c #5A5231",
-"@# c #5C532E",
-"## c #685A37",
-"$# c #72673F",
-"%# c #7F7C54",
-" c #CAC8BA",
-"*# c #DEDBD6",
-"=# c #DBD7D3",
-"-# c #D9D5D4",
-";# c #C7C1C0",
-"># c #857E7D",
-",# c #59544B",
-"'# c #544C44",
-")# c #655F61",
-"!# c #736D69",
-"~# c #837E7E",
-"{# c #595B4D",
-"]# c #4D462F",
-"^# c #7D7862",
-"/# c #8D9594",
-"(# c #4F3F2C",
-"_# c #635237",
-":# c #251E06",
-"<# c #435120",
-"[# c #262913",
-"}# c #212012",
-"|# c #3F3F27",
-"1# c #6A5631",
-"2# c #3D140C",
-"3# c #1A0907",
-"4# c #31180C",
-"5# c #988561",
-"6# c #7A804B",
-"7# c #887C5D",
-"8# c #596137",
-"9# c #525633",
-"0# c #242513",
-"a# c #201A0F",
-"b# c #453821",
-"c# c #78613B",
-"d# c #78603D",
-"e# c #AB8E5D",
-"f# c #A0865F",
-"g# c #AB9575",
-"h# c #C7BCB1",
-"i# c #A49994",
-"j# c #9E9492",
-"k# c #A59E9D",
-"l# c #A7A3A4",
-"m# c #8A8280",
-"n# c #7E7C72",
-"o# c #403727",
-"p# c #1C2119",
-"q# c #55534F",
-"r# c #555147",
-"s# c #8C8F88",
-"t# c #8E948D",
-"u# c #788278",
-"v# c #8C989C",
-"w# c #444137",
-"x# c #423E2D",
-"y# c #3F3D1B",
-"z# c #473C25",
-"A# c #737367",
-"B# c #818772",
-"C# c #838365",
-"D# c #431F14",
-"E# c #3E251F",
-"F# c #6B523E",
-"G# c #8A7F5E",
-"H# c #736544",
-"I# c #6B5E3C",
-"J# c #5D5134",
-"K# c #494326",
-"L# c #2C2715",
-"M# c #3F371F",
-"N# c #6D5835",
-"O# c #79693D",
-"P# c #A39B77",
-"Q# c #D2CDB6",
-"R# c #E4DCCD",
-"S# c #E5DACF",
-"T# c #C0B5AF",
-"U# c #988E8B",
-"V# c #9C9490",
-"W# c #B6B3AF",
-"X# c #AEAFAE",
-"Y# c #A7A9A8",
-"Z# c #55524A",
-"`# c #514B37",
-" $ c #434527",
-".$ c #4A4D31",
-"+$ c #595E45",
-"@$ c #7E7A75",
-"#$ c #4C4A47",
-"$$ c #393023",
-"%$ c #2B251E",
-"&$ c #2F2C1E",
-"*$ c #4B4C3C",
-"=$ c #3D3E32",
-"-$ c #4B4320",
-";$ c #979789",
-">$ c #C6CFCB",
-",$ c #AFB1AB",
-"'$ c #67695A",
-")$ c #605136",
-"!$ c #8F7E67",
-"~$ c #867D62",
-"{$ c #6D6D4E",
-"]$ c #625434",
-"^$ c #554B26",
-"/$ c #464020",
-"($ c #494825",
-"_$ c #494926",
-":$ c #75683D",
-"<$ c #998149",
-"[$ c #A3854F",
-"}$ c #A89C86",
-"|$ c #D8D5D1",
-"1$ c #D9D7D5",
-"2$ c #E7E6E4",
-"3$ c #CDCAC9",
-"4$ c #918986",
-"5$ c #B5B5B0",
-"6$ c #B2B6B2",
-"7$ c #A8B0AB",
-"8$ c #B8C2C2",
-"9$ c #8B908E",
-"0$ c #585B48",
-"a$ c #64663A",
-"b$ c #65643A",
-"c$ c #565336",
-"d$ c #4B3D2B",
-"e$ c #443B31",
-"f$ c #616057",
-"g$ c #5F6251",
-"h$ c #495134",
-"i$ c #798175",
-"j$ c #555648",
-"k$ c #665D3F",
-"l$ c #80857A",
-"m$ c #646263",
-"n$ c #48443F",
-"o$ c #393528",
-"p$ c #4C4836",
-"q$ c #5D5739",
-"r$ c #595733",
-"s$ c #534A2C",
-"t$ c #3C4420",
-"u$ c #2C3318",
-"v$ c #3E4623",
-"w$ c #5C6E37",
-"x$ c #7E8A52",
-"y$ c #8B8964",
-"z$ c #94976D",
-"A$ c #797B56",
-"B$ c #7C7855",
-"C$ c #58573F",
-"D$ c #353329",
-"E$ c #413937",
-"F$ c #544A47",
-"G$ c #A1A09C",
-"H$ c #817F79",
-"I$ c #A6AEAB",
-"J$ c #8C9091",
-"K$ c #524F4D",
-"L$ c #2D261F",
-"M$ c #535645",
-"N$ c #81886E",
-"O$ c #938E77",
-"P$ c #B0ADAA",
-"Q$ c #807368",
-"R$ c #A3A9A0",
-"S$ c #818D86",
-"T$ c #68726D",
-"U$ c #727B6D",
-"V$ c #444031",
-"W$ c #363123",
-"X$ c #545138",
-"Y$ c #3C3F28",
-"Z$ c #3A3B32",
-"`$ c #2E3424",
-" % c #383B31",
-".% c #353E26",
-"+% c #5E5A3A",
-"@% c #403B21",
-"#% c #3A4620",
-"$% c #374320",
-"%% c #414B2B",
-"&% c #657349",
-"*% c #8E9874",
-"=% c #B8BBA1",
-"-% c #B6BAAA",
-";% c #A19D91",
-">% c #9D9888",
-",% c #A1AD86",
-"'% c #565E41",
-")% c #4A4A37",
-"!% c #625C4E",
-"~% c #585043",
-"{% c #3D362B",
-"]% c #2F2317",
-"^% c #2D2619",
-"/% c #3A3624",
-"(% c #514C3C",
-"_% c #85877D",
-":% c #C2C4BF",
-"<% c #AEAEAA",
-"[% c #8F8D88",
-"}% c #787870",
-"|% c #767F77",
-"1% c #757C7A",
-"2% c #6C7274",
-"3% c #43413B",
-"4% c #2B2514",
-"5% c #2D2814",
-"6% c #26220F",
-"7% c #3A331E",
-"8% c #212413",
-"9% c #273019",
-"0% c #505644",
-"a% c #6A6E66",
-"b% c #5B644A",
-"c% c #464B2A",
-"d% c #404E28",
-"e% c #313920",
-"f% c #4C5A33",
-"g% c #899377",
-"h% c #737C60",
-"i% c #CCCDC4",
-"j% c #E9EAE5",
-"k% c #DEDDDA",
-"l% c #6B6159",
-"m% c #665E4B",
-"n% c #4B4736",
-"o% c #2D3221",
-"p% c #474029",
-"q% c #59574B",
-"r% c #726F62",
-"s% c #7C7962",
-"t% c #716A4E",
-"u% c #958C6E",
-"v% c #A39E8D",
-"w% c #B8B8A9",
-"x% c #CBCDC8",
-"y% c #D1D8D7",
-"z% c #D0DAD8",
-"A% c #A1AAA6",
-"B% c #7E8380",
-"C% c #35382D",
-"D% c #3F3D35",
-"E% c #3A362B",
-"F% c #2A261E",
-"G% c #1F1A13",
-"H% c #3B4223",
-"I% c #2C2D13",
-"J% c #2F2B15",
-"K% c #2E2410",
-"L% c #323424",
-"M% c #313219",
-"N% c #4F574C",
-"O% c #616E64",
-"P% c #4D4F40",
-"Q% c #353624",
-"R% c #2C341D",
-"S% c #4E5D33",
-"T% c #56663A",
-"U% c #434A2B",
-"V% c #4F5936",
-"W% c #767668",
-"X% c #9F9B9C",
-"Y% c #878182",
-"Z% c #504941",
-"`% c #5E5940",
-" & c #515137",
-".& c #4E4B36",
-"+& c #666148",
-"@& c #564E34",
-"#& c #4A452C",
-"$& c #504829",
-"%& c #66593B",
-"&& c #68634F",
-"*& c #9D9C92",
-"=& c #DBDFDD",
-"-& c #D7E0DF",
-";& c #C4D4D5",
-">& c #B6C8CC",
-",& c #929FA3",
-"'& c #555348",
-")& c #423925",
-"!& c #585143",
-"~& c #444036",
-"{& c #404524",
-"]& c #35401D",
-"^& c #2C3012",
-"/& c #303214",
-"(& c #423C1C",
-"_& c #303210",
-":& c #46471F",
-"<& c #505E50",
-"[& c #495747",
-"}& c #484A3B",
-"|& c #4C4832",
-"1& c #363A24",
-"2& c #4E522E",
-"3& c #51552F",
-"4& c #4E532E",
-"5& c #586639",
-"6& c #535D36",
-"7& c #5B6249",
-"8& c #38362A",
-"9& c #33321F",
-"0& c #52572C",
-"a& c #51542A",
-"b& c #4E4C2A",
-"c& c #3A411E",
-"d& c #2E3219",
-"e& c #312B15",
-"f& c #4C4220",
-"g& c #51421F",
-"h& c #554C27",
-"i& c #747463",
-"j& c #CCD6D6",
-"k& c #B8CACD",
-"l& c #9DB1B7",
-"m& c #83959B",
-"n& c #5A6368",
-"o& c #403E38",
-"p& c #422E18",
-"q& c #503F1C",
-"r& c #3C3B1B",
-"s& c #343917",
-"t& c #37421E",
-"u& c #374820",
-"v& c #2F3518",
-"w& c #24230B",
-"x& c #465122",
-"y& c #32330A",
-"z& c #414310",
-"A& c #434A1B",
-"B& c #3E4816",
-"C& c #504D29",
-"D& c #5B5A40",
-"E& c #898778",
-"F& c #615D3C",
-"G& c #504E2A",
-"H& c #586434",
-"I& c #647E40",
-"J& c #4E5E32",
-"K& c #586D36",
-"L& c #2F351C",
-"M& c #373D20",
-"N& c #474B23",
-"O& c #6A6339",
-"P& c #524B26",
-"Q& c #3E3C1F",
-"R& c #4E4C2B",
-"S& c #4A4426",
-"T& c #403B1D",
-"U& c #443A1C",
-"V& c #3B371B",
-"W& c #5D553B",
-"X& c #61635F",
-"Y& c #78868B",
-"Z& c #545C62",
-"`& c #40444A",
-" * c #252524",
-".* c #27261F",
-"+* c #4A4320",
-"@* c #485022",
-"#* c #2D3515",
-"$* c #2C3415",
-"%* c #3F4E26",
-"&* c #273416",
-"** c #262C11",
-"=* c #1C1C0C",
-"-* c #3D461E",
-";* c #3D3815",
-">* c #3B2406",
-",* c #332508",
-"'* c #3D390E",
-")* c #504E1D",
-"!* c #6C6138",
-"~* c #A7A392",
-"{* c #908674",
-"]* c #715D3A",
-"^* c #645633",
-"/* c #2F2A15",
-"(* c #4F5A31",
-"_* c #47512E",
-":* c #505933",
-"<* c #40432B",
-"[* c #59553D",
-"}* c #554933",
-"|* c #686136",
-"1* c #717A3D",
-"2* c #554C2F",
-"3* c #604A29",
-"4* c #625530",
-"5* c #61572D",
-"6* c #513F1D",
-"7* c #443919",
-"8* c #3C2E19",
-"9* c #1F1812",
-"0* c #1F1B17",
-"a* c #23241D",
-"b* c #1F2119",
-"c* c #17180F",
-"d* c #2F3319",
-"e* c #3F421E",
-"f* c #292813",
-"g* c #343B19",
-"h* c #35431D",
-"i* c #1E290F",
-"j* c #111309",
-"k* c #465226",
-"l* c #4A5024",
-"m* c #231B09",
-"n* c #492C0B",
-"o* c #544113",
-"p* c #605F28",
-"q* c #6B7F38",
-"r* c #6E7B45",
-"s* c #696959",
-"t* c #867E72",
-"u* c #655432",
-"v* c #574929",
-"w* c #59663A",
-"x* c #444B2D",
-"y* c #444E29",
-"z* c #25241F",
-"A* c #41565B",
-"B* c #41676B",
-"C* c #5E7236",
-"D* c #4D5134",
-"E* c #544934",
-"F* c #5B4627",
-"G* c #5C4321",
-"H* c #644A25",
-"I* c #604A24",
-"J* c #614C27",
-"K* c #4F3E22",
-"L* c #4A3118",
-"M* c #50391F",
-"N* c #292115",
-"O* c #161007",
-"P* c #2E2212",
-"Q* c #46361C",
-"R* c #533616",
-"S* c #31220C",
-"T* c #30250C",
-"U* c #232811",
-"V* c #141708",
-"W* c #141407",
-"X* c #536B32",
-"Y* c #566434",
-"Z* c #403B19",
-"`* c #50471A",
-" = c #3D4214",
-".= c #3F4B1A",
-"+= c #374519",
-"@= c #3C451E",
-"#= c #5B6742",
-"$= c #909487",
-"%= c #6B6954",
-"&= c #363C22",
-"*= c #3E4527",
-"== c #2A2C18",
-"-= c #262314",
-";= c #2A2A26",
-">= c #3C4E51",
-",= c #3D585D",
-"'= c #444D40",
-")= c #39372B",
-"!= c #413C24",
-"~= c #534A2A",
-"{= c #68532E",
-"]= c #644E29",
-"^= c #583A1B",
-"/= c #5C492B",
-"(= c #3F2F1C",
-"_= c #4A321A",
-":= c #4C3A1C",
-"<= c #402F18",
-"[= c #21140A",
-"}= c #4E3D23",
-"|= c #2D160B",
-"1= c #422C15",
-"2= c #4F411F",
-"3= c #50451E",
-"4= c #262A15",
-"5= c #272C12",
-"6= c #171606",
-"7= c #425423",
-"8= c #323927",
-"9= c #282A17",
-"0= c #483A1B",
-"a= c #3A4115",
-"b= c #25350C",
-"c= c #212E0D",
-"d= c #424F29",
-"e= c #5E7137",
-"f= c #8B947C",
-"g= c #717868",
-"h= c #3B432B",
-"i= c #3B4030",
-"j= c #2E2F20",
-"k= c #38352A",
-"l= c #485150",
-"m= c #7A694F",
-"n= c #7D5E39",
-"o= c #624929",
-"p= c #352919",
-"q= c #4B3921",
-"r= c #604E30",
-"s= c #2F291B",
-"t= c #423924",
-"u= c #605736",
-"v= c #605A31",
-"w= c #656330",
-"x= c #474C25",
-"y= c #54562C",
-"z= c #43361C",
-"A= c #4B3A21",
-"B= c #4D3417",
-"C= c #5B4727",
-"D= c #475228",
-"E= c #222A12",
-"F= c #343118",
-"G= c #292811",
-"H= c #282813",
-"I= c #262513",
-"J= c #1F2114",
-"K= c #1A1F0B",
-"L= c #352F12",
-"M= c #3B3A12",
-"N= c #303710",
-"O= c #38381B",
-"P= c #3B471E",
-"Q= c #394420",
-"R= c #3B3F2D",
-"S= c #595C50",
-"T= c #73756E",
-"U= c #7E8079",
-"V= c #7D7467",
-"W= c #746244",
-"X= c #736636",
-"Y= c #6C6F3B",
-"Z= c #646738",
-"`= c #57542E",
-" - c #5B5930",
-".- c #625A31",
-"+- c #5E5D31",
-"@- c #44492A",
-"#- c #4E5230",
-"$- c #4C5431",
-"%- c #404328",
-"&- c #4A4725",
-"*- c #525026",
-"=- c #484C2A",
-"-- c #47562B",
-";- c #494E24",
-">- c #3B4A28",
-",- c #28341B",
-"'- c #13150C",
-")- c #1F2414",
-"!- c #2C2C17",
-"~- c #32311D",
-"{- c #36362A",
-"]- c #342E16",
-"^- c #484C29",
-"/- c #4D4827",
-"(- c #4B3D22",
-"_- c #393012",
-":- c #3A3517",
-"<- c #3A4721",
-"[- c #283013",
-"}- c #292F13",
-"|- c #1A1E1D",
-"1- c #242E32",
-"2- c #505C62",
-"3- c #5E534B",
-"4- c #6A5A37",
-"5- c #707D44",
-"6- c #576931",
-"7- c #49502E",
-"8- c #596338",
-"9- c #525F38",
-"0- c #4F5833",
-"a- c #4F482C",
-"b- c #4C5632",
-"c- c #525C33",
-"d- c #454D2C",
-"e- c #50562F",
-"f- c #556536",
-"g- c #637A3B",
-"h- c #415229",
-"i- c #3F5428",
-"j- c #2A381B",
-"k- c #242E1A",
-"l- c #191E16",
-"m- c #181D13",
-"n- c #1F2116",
-"o- c #343D22",
-"p- c #313B28",
-"q- c #392D15",
-"r- c #38391C",
-"s- c #645B45",
-"t- c #8D8E7D",
-"u- c #868C71",
-"v- c #5D6640",
-"w- c #282C17",
-"x- c #282B16",
-"y- c #262616",
-"z- c #363426",
-"A- c #30332E",
-"B- c #43433A",
-"C- c #55503A",
-"D- c #545734",
-"E- c #516038",
-"F- c #42532A",
-"G- c #43512E",
-"H- c #3F482B",
-"I- c #393C22",
-"J- c #474428",
-"K- c #4B452B",
-"L- c #4E4A2C",
-"M- c #505F35",
-"N- c #48512E",
-"O- c #525F35",
-"P- c #46572C",
-"Q- c #303D1D",
-"R- c #2B371E",
-"S- c #39482C",
-"T- c #242D1E",
-"U- c #1D2417",
-"V- c #191E15",
-"W- c #1B1B14",
-"X- c #242718",
-"Y- c #293219",
-"Z- c #3B463C",
-"`- c #454427",
-" ; c #3F4A2B",
-".; c #4F4F3E",
-"+; c #8E9897",
-"@; c #97A19A",
-"#; c #808C77",
-"$; c #5A6934",
-"%; c #3A401E",
-"&; c #383926",
-"*; c #585747",
-"=; c #485144",
-"-; c #484932",
-";; c #555A3E",
-">; c #4B4F36",
-",; c #303528",
-"'; c #25271F",
-"); c #26261D",
-"!; c #3B3322",
-"~; c #52472D",
-"{; c #615E3B",
-"]; c #515E34",
-"^; c #475730",
-"/; c #40492B",
-"(; c #4C5C33",
-"_; c #374425",
-":; c #2E3820",
-"<; c #212918",
-"[; c #4A5149",
-"}; c #4A5349",
-"|; c #252D1F",
-"1; c #1C211B",
-"2; c #242219",
-"3; c #2A2E1C",
-"4; c #2D3622",
-"5; c #464B40",
-"6; c #4B5149",
-"7; c #95A1A1",
-"8; c #9FABA8",
-"9; c #6C7966",
-"0; c #556342",
-"a; c #575F4A",
-"b; c #6C7368",
-"c; c #6F7D7D",
-"d; c #586159",
-"e; c #777B72",
-"f; c #747267",
-"g; c #524E41",
-"h; c #443E31",
-"i; c #463D2D",
-"j; c #625644",
-"k; c #685740",
-"l; c #6E5F3A",
-"m; c #454629",
-"n; c #2C3120",
-"o; c #373828",
-"p; c #3A3F2A",
-"q; c #3F4B30",
-"r; c #24271B",
-"s; c #1F1F16",
-"t; c #414441",
-"u; c #8E9E9F",
-"v; c #3A4241",
-"w; c #414849",
-"x; c #2B2A21",
-"y; c #48483D",
-"z; c #3D4738",
-"A; c #6D7872",
-"B; c #A3B2B5",
-"C; c #A8B6B7",
-"D; c #808C85",
-"E; c #555B53",
-"F; c #393B2C",
-"G; c #4D493E",
-"H; c #878984",
-"I; c #7F7B71",
-"J; c #6D6252",
-"K; c #574B32",
-"L; c #635A3A",
-"M; c #7A7452",
-"N; c #6D6446",
-"O; c #474431",
-"P; c #404331",
-"Q; c #484D39",
-"R; c #4A4A39",
-"S; c #33342D",
-"T; c #787D77",
-"U; c #5D5F59",
-"V; c #2F2D23",
-"W; c #36382F",
-"X; c #8A9BA0",
-"Y; c #637279",
-"Z; c #262B2A",
-"`; c #2B2C25",
-" > c #404439",
-".> c #403320",
-"+> c #3A3C30",
-"@> c #4E5648",
-"#> c #646B69",
-"$> c #6F7779",
-"%> c #666B6D",
-"&> c #434642",
-"*> c #4B4C43",
-"=> c #686A5F",
-"-> c #666C5A",
-";> c #64695C",
-">> c #505240",
-",> c #50553B",
-"'> c #494F37",
-")> c #464B30",
-"!> c #52513A",
-"~> c #797B67",
-"{> c #848E75",
-"]> c #7D8A6E",
-"^> c #60675A",
-"/> c #4B5147",
-"(> c #767B78",
-"_> c #7C807F",
-":> c #37362A",
-"<> c #2E3024",
-"[> c #383C34",
-"}> c #6D7C7F",
-"|> c #63757D",
-"1> c #4B5659",
-"2> c #33362E",
-"3> c #47534C",
-"4> c #383E31",
-"5> c #353A29",
-"6> c #626C6A",
-"7> c #4D5452",
-"8> c #2A2E23",
-"9> c #353B2A",
-"0> c #49523F",
-"a> c #4E5745",
-"b> c #565A4E",
-"c> c #5B6052",
-"d> c #424934",
-"e> c #434931",
-"f> c #4C5339",
-"g> c #616555",
-"h> c #747E69",
-"i> c #7D8679",
-"j> c #95A299",
-"k> c #929C99",
-"l> c #79817F",
-"m> c #6E776F",
-"n> c #7B827D",
-"o> c #858F93",
-"p> c #3A3E3E",
-"q> c #3E3B2E",
-"r> c #596059",
-"s> c #6C7B7A",
-"t> c #5B6D75",
-"u> c #404A4D",
-"v> c #313730",
-"w> c #5D6669",
-"x> c #4B534F",
-"y> c #32362E",
-"z> c #3B4231",
-"A> c #3C4437",
-"B> c #545F51",
-"C> c #43473D",
-"D> c #3D3C2C",
-"E> c #4E4F3B",
-"F> c #5E5E4B",
-"G> c #84887B",
-"H> c #8E928C",
-"I> c #99A19E",
-"J> c #9AA5A5",
-"K> c #A2AFB1",
-"L> c #9BA7AA",
-"M> c #ACBCBF",
-"N> c #97A3A7",
-"O> c #676F72",
-"P> c #3F4538",
-"Q> c #576057",
-"R> c #364132",
-"S> c #607172",
-"T> c #54676F",
-"U> c #505854",
-"V> c #4A524E",
-"W> c #576062",
-"X> c #6E797C",
-"Y> c #707D7C",
-"Z> c #748080",
-"`> c #737E7D",
-" , c #747C79",
-"., c #6E7065",
-"+, c #78776B",
-"@, c #767467",
-"#, c #767970",
-"$, c #919B96",
-"%, c #859090",
-"&, c #747A7C",
-"*, c #909CA0",
-"=, c #96A5A9",
-"-, c #9BABB0",
-";, c #7E8B91",
-">, c #4B5153",
-",, c #373B37",
-"', c #21251D",
-"), c #282C23",
-"!, c #5D6B6F",
-"~, c #546465",
-"{, c #566566",
-"], c #71858B",
-"^, c #82979E",
-"/, c #86999F",
-"(, c #8D9FA5",
-"_, c #8D9B9C",
-":, c #828E8E",
-"<, c #737B76",
-"[, c #727D74",
-"}, c #808D8D",
-"|, c #7E898B",
-"1, c #838D8E",
-"2, c #7E8B8F",
-"3, c #84949B",
-"4, c #7B8B91",
-"5, c #6C7A81",
-"6, c #515B5F",
-"7, c #363C3A",
-"8, c #2A302F",
-"9, c #36474F",
-"0, c #5C6C72",
-"a, c #5B6971",
-"b, c #596871",
-"c, c #6F838C",
-"d, c #7B9099",
-"e, c #778A91",
-"f, c #7B8D93",
-"g, c #738487",
-"h, c #6E7C7D",
-"i, c #78878C",
-"j, c #829399",
-"k, c #7D9097",
-"l, c #73868C",
-"m, c #6C7D83",
-"n, c #63747B",
-"o, c #55646B",
-"p, c #4F5B62",
-"q, c #515E67",
-"r, c #5F737D",
-"s, c #637882",
-"t, c #677C85",
-"u, c #647780",
-"v, c #64767D",
-"w, c #62747C",
-"x, c #62757E",
-"y, c #60737D",
-"z, c #5A6B74",
-"A, c #55666F",
-" ",
-" ",
-" ",
-" ",
-" . + @ # $ % & * = ",
-" - ; > , ' ) ! ~ { ] ^ / ( _ : < [ ",
-" } | 1 2 3 4 5 6 7 8 9 0 a b c d e f g ",
-" h i j k l m n o p q r s t u v w x y z A B C D E ",
-" F G H I J K L M N O P Q R S T U V W X Y Z ` ...+.@. ",
-" #.$.%.&.*.=.-.;.>.,.'.).!.~.{.].^./.(._.:.<.[.}.|.1.2. ",
-" 3.4.5.6.7.8.9.0.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t. ",
-" v.w.x.y.z.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y. ",
-" Z.`. +.+++@+#+$+%+&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+(+_+:+<+[+}+|+1+ ",
-" 2+3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+ ",
-" z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+`+ @.@+@@@#@$@ ",
-" %@&@*@=@-@;@>@,@'@)@!@~@{@]@^@/@(@_@:@<@[@}@|@1@2@3@4@5@6@7@8@9@0@a@b@c@ ",
-" d@e@f@g@h@i@j@k@,@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@A@B@C@D@E@F@G@H@I@J@K@L@M@N@ ",
-" O@P@Q@R@S@T@U@V@W@X@Y@Z@`@ #.#+#@###$#%#*#=#-#;#>#,#'#)#!#~#{#]#^#/#(#_#:# ",
-" <#[#}#|#1#2#3#4#5#6#7#8#9#0#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y# ",
-" z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $.$+$@$#$$$%$&$*$=$ ",
-" -$;$>$,$'$)$!$~${$]$^$/$($_$:$<$[$}$|$1$2$3$4$5$6$7$8$9$0$a$b$c$d$e$f$g$h$i$j$ ",
-" k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$ ",
-" X$Y$Z$`$ %.%+%@%#%$%%%&%*%=%-%;%>%,%'%)%D$!%~%{%]%^%/%(%_%:%<%[%}%|%1%2%3%4%5%6% ",
-" 7%8%9%0%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J% ",
-" K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%`% &.&+&@&$&%&&&*&=&-&;&>&,&V.'&)&!&~&{&]&^&/& ",
-" (&_&:&<&[&}&|&1&2&3&4&5&6&7&8&9&0&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w& ",
-" x&y&z&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&`& *.*+*@*#*$*%*&***=* ",
-" -*;*>*,*'*)*!*~*{*]*^*/*(*_*:*<*[*}*|*1*2*3*4*5*6*7*8*9*0*a*b*c*d*e*f*g*h*i*j* ",
-" k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W* ",
-" X*Y*Z*`* =.=+=@=#=$=%=&=*===-=;=>=,='=)=!=~={=]=^=/=(=_=:=<=[=}=|=1=2=3=4=5=6= ",
-" 7=8=9=0=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z=A=B=C=D=E=F=G=H=I= ",
-" J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=`= -.-+-@-#-$-%-&-*-=---;->-,-'-)-!-~-{- ",
-" ]-^-/-(-_-:-<-[-}-|-1-2-3-4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p- ",
-" q-r-s-t-u-v-w-x-y-z-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z- ",
-" `- ;.;+;@;#;$;%;&;*;=;-;;;>;,;';);!;~;{;];^;/;(;_;:;<;[;};|;1;2;3;4; ",
-" 5;6;7;8;9;0;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;3; ",
-" y;z;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;2;W;X;Y;Z;`; > ",
-" .>+>@>#>$>%>&>*>=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2> ",
-" 4>5>6>7>8>9>0>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u> ",
-" v>w>x>y>z>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T> ",
-" U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,&,*,=,-,;,>,,,',), ",
-" !,~,{,],^,/,(,_,:,<,[,},|,1,2,3,4,5,6,7,8, ",
-" 0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p, ",
-" q,r,s,t,u,v,w,x,y,z,A, ",
-" ",
-" ",
-" ",
-" "};
+". c #A8B58C",
+"+ c #B7C0AA",
+"@ c #CACCCA",
+"# c #AEADA8",
+"$ c #949FA4",
+"% c #A5ADB2",
+"& c #D7E4E8",
+"* c #D8E8ED",
+"= c #A8ABA6",
+"- c #978E81",
+"; c #9D9C8E",
+"> c #BEC4BE",
+", c #777D61",
+"' c #737766",
+") c #747674",
+"! c #717175",
+"~ c #6E6E71",
+"{ c #8A9293",
+"] c #888477",
+"^ c #63605B",
+"/ c #83856E",
+"( c #888C7E",
+"_ c #666D60",
+": c #4A483C",
+"< c #433729",
+"[ c #B1B1AC",
+"} c #ABABA9",
+"| c #C1B195",
+"1 c #8A816C",
+"2 c #48453A",
+"3 c #3D3A32",
+"4 c #6B6A61",
+"5 c #8A8B8A",
+"6 c #989592",
+"7 c #948F87",
+"8 c #7E7861",
+"9 c #59513F",
+"0 c #65604F",
+"a c #918F86",
+"b c #5F5E45",
+"c c #4B5735",
+"d c #3F462F",
+"e c #443F31",
+"f c #5B5E48",
+"g c #98998C",
+"h c #8C7B59",
+"i c #B1AA95",
+"j c #49483C",
+"k c #7F7B6F",
+"l c #6E6049",
+"m c #696C6D",
+"n c #483C2F",
+"o c #403623",
+"p c #5B4C3B",
+"q c #514237",
+"r c #66553A",
+"s c #645B3E",
+"t c #878B79",
+"u c #93948B",
+"v c #605C3B",
+"w c #4D5032",
+"x c #373117",
+"y c #48512C",
+"z c #52633A",
+"A c #7D8278",
+"B c #BAB3A5",
+"C c #7C7E6B",
+"D c #2B2818",
+"E c #664E32",
+"F c #37341B",
+"G c #636156",
+"H c #737769",
+"I c #454935",
+"J c #3F4430",
+"K c #666637",
+"L c #5E712F",
+"M c #535435",
+"N c #7D7E6A",
+"O c #717267",
+"P c #6E6B6A",
+"Q c #545B46",
+"R c #6D715E",
+"S c #767960",
+"T c #575736",
+"U c #42512E",
+"V c #303828",
+"W c #8D9696",
+"X c #9C9577",
+"Y c #58513D",
+"Z c #3E3C22",
+"` c #4D4B1E",
+" . c #323916",
+".. c #565137",
+"+. c #4A3D26",
+"@. c #3E3E24",
+"#. c #746E37",
+"$. c #5F5B2F",
+"%. c #232A10",
+"&. c #1F2513",
+"*. c #5B5B3C",
+"=. c #807B63",
+"-. c #625C4B",
+";. c #6B675B",
+">. c #90968D",
+",. c #7B7E7B",
+"'. c #7C8380",
+"). c #4B503E",
+"!. c #1D2212",
+"~. c #3F4233",
+"{. c #737A76",
+"]. c #4D4F31",
+"^. c #494524",
+"/. c #7D9442",
+"(. c #4F6429",
+"_. c #57512D",
+":. c #4F3C1F",
+"<. c #423F1D",
+"[. c #5F6A35",
+"}. c #3D481F",
+"|. c #404024",
+"1. c #5F512B",
+"2. c #3F381E",
+"3. c #6E6C3F",
+"4. c #717448",
+"5. c #646C48",
+"6. c #B4ADA3",
+"7. c #E5E6E4",
+"8. c #BEBEBE",
+"9. c #444737",
+"0. c #2D311B",
+"a. c #222911",
+"b. c #1D220E",
+"c. c #231E09",
+"d. c #59574D",
+"e. c #879657",
+"f. c #3C3922",
+"g. c #4C5324",
+"h. c #4E4D27",
+"i. c #3F3420",
+"j. c #3C401F",
+"k. c #4E552A",
+"l. c #5C703B",
+"m. c #778649",
+"n. c #43442C",
+"o. c #736039",
+"p. c #897648",
+"q. c #847644",
+"r. c #635F2D",
+"s. c #525B31",
+"t. c #647444",
+"u. c #504E43",
+"v. c #7F7774",
+"w. c #8B8788",
+"x. c #969591",
+"y. c #4B542F",
+"z. c #5C6041",
+"A. c #5D513D",
+"B. c #474638",
+"C. c #4B442E",
+"D. c #8E8B82",
+"E. c #859F4A",
+"F. c #373F1C",
+"G. c #24260C",
+"H. c #161407",
+"I. c #2C2D14",
+"J. c #3C4420",
+"K. c #38401D",
+"L. c #657B43",
+"M. c #70804E",
+"N. c #595C35",
+"O. c #706B3A",
+"P. c #66562B",
+"Q. c #3C4120",
+"R. c #383B20",
+"S. c #444B2E",
+"T. c #75766C",
+"U. c #DEDBD8",
+"V. c #A49E98",
+"W. c #7A726F",
+"X. c #ADAFAA",
+"Y. c #9CA098",
+"Z. c #767164",
+"`. c #402815",
+" + c #46362F",
+".+ c #47341D",
+"++ c #484A2B",
+"@+ c #858F81",
+"#+ c #828566",
+"$+ c #576B2A",
+"%+ c #252210",
+"&+ c #3F3B17",
+"*+ c #4A2B12",
+"=+ c #442812",
+"-+ c #58582B",
+";+ c #555F32",
+">+ c #5C6433",
+",+ c #48532E",
+"'+ c #636D42",
+")+ c #574E30",
+"!+ c #524C2B",
+"~+ c #69623A",
+"{+ c #888661",
+"]+ c #CECDBF",
+"^+ c #E3DFDC",
+"/+ c #C9C3C3",
+"(+ c #898481",
+"_+ c #5D574D",
+":+ c #797271",
+"<+ c #8D8987",
+"[+ c #484638",
+"}+ c #534830",
+"|+ c #4A4C48",
+"1+ c #5E4327",
+"2+ c #252108",
+"3+ c #636C59",
+"4+ c #666B44",
+"5+ c #424030",
+"6+ c #675F3D",
+"7+ c #32100A",
+"8+ c #2F180F",
+"9+ c #887F5A",
+"0+ c #817950",
+"a+ c #615F39",
+"b+ c #2C2D18",
+"c+ c #2A2113",
+"d+ c #695534",
+"e+ c #947E52",
+"f+ c #B8A37E",
+"g+ c #C3B29E",
+"h+ c #ACA09D",
+"i+ c #A09795",
+"j+ c #BCBABA",
+"k+ c #857F7C",
+"l+ c #544D3D",
+"m+ c #30362B",
+"n+ c #59564A",
+"o+ c #A2A8A6",
+"p+ c #62645A",
+"q+ c #535453",
+"r+ c #474534",
+"s+ c #3D3C1F",
+"t+ c #8F9692",
+"u+ c #575033",
+"v+ c #776D51",
+"w+ c #ACB2AA",
+"x+ c #8A9080",
+"y+ c #5A432F",
+"z+ c #8B7B65",
+"A+ c #746D50",
+"B+ c #5F502C",
+"C+ c #484224",
+"D+ c #414122",
+"E+ c #75673B",
+"F+ c #9E8149",
+"G+ c #BDB7A9",
+"H+ c #E5E4E1",
+"I+ c #EAE7E2",
+"J+ c #9C9491",
+"K+ c #ADABA6",
+"L+ c #A0A3A0",
+"M+ c #A8AFAE",
+"N+ c #5C5F51",
+"O+ c #5E5D32",
+"P+ c #525431",
+"Q+ c #43382B",
+"R+ c #453E34",
+"S+ c #41412F",
+"T+ c #5D6454",
+"U+ c #464941",
+"V+ c #6D7372",
+"W+ c #76705A",
+"X+ c #60624D",
+"Y+ c #494644",
+"Z+ c #39382E",
+"`+ c #444630",
+" @ c #584F2D",
+".@ c #444823",
+"+@ c #30381B",
+"@@ c #49562C",
+"#@ c #7E8D54",
+"$@ c #939472",
+"%@ c #7F7F60",
+"&@ c #7C8259",
+"*@ c #373727",
+"=@ c #3F3834",
+"-@ c #85817E",
+";@ c #6D6D66",
+">@ c #666765",
+",@ c #352E27",
+"'@ c #49493C",
+")@ c #969985",
+"!@ c #A39D98",
+"~@ c #928E81",
+"{@ c #8C9892",
+"]@ c #7E8B8A",
+"^@ c #444130",
+"/@ c #343021",
+"(@ c #444736",
+"_@ c #737F5D",
+":@ c #605543",
+"<@ c #2D2D19",
+"[@ c #28301C",
+"}@ c #5E6257",
+"|@ c #596044",
+"1@ c #3F4523",
+"2@ c #384123",
+"3@ c #65724F",
+"4@ c #889176",
+"5@ c #E6E6DF",
+"6@ c #C2C0BD",
+"7@ c #827B6D",
+"8@ c #656551",
+"9@ c #3C3B28",
+"0@ c #524F43",
+"a@ c #6A644D",
+"b@ c #655A42",
+"c@ c #7C735E",
+"d@ c #9F9F8D",
+"e@ c #B2B5B0",
+"f@ c #C9D0CD",
+"g@ c #8F9490",
+"h@ c #3F4037",
+"i@ c #4F504A",
+"j@ c #292420",
+"k@ c #2F2F19",
+"l@ c #2C2710",
+"m@ c #464730",
+"n@ c #8C9194",
+"o@ c #5D4C2A",
+"p@ c #252514",
+"q@ c #3F412A",
+"r@ c #5B6D68",
+"s@ c #4D4C3D",
+"t@ c #282F1A",
+"u@ c #526038",
+"v@ c #49512D",
+"w@ c #444B2D",
+"x@ c #7F7B76",
+"y@ c #5B5453",
+"z@ c #535137",
+"A@ c #525535",
+"B@ c #565136",
+"C@ c #48432A",
+"D@ c #483F23",
+"E@ c #635636",
+"F@ c #777664",
+"G@ c #D5DBDA",
+"H@ c #BECFD0",
+"I@ c #A8BCC1",
+"J@ c #525553",
+"K@ c #4E4432",
+"L@ c #4B402D",
+"M@ c #403F26",
+"N@ c #3B4A23",
+"O@ c #323517",
+"P@ c #454936",
+"Q@ c #828859",
+"R@ c #30330E",
+"S@ c #424513",
+"T@ c #444F29",
+"U@ c #434629",
+"V@ c #746D5B",
+"W@ c #585532",
+"X@ c #4F552C",
+"Y@ c #677E43",
+"Z@ c #5A6E3D",
+"`@ c #30361E",
+" # c #424521",
+".# c #5F5831",
+"+# c #3C3D1D",
+"@# c #414024",
+"## c #3D391A",
+"$# c #413719",
+"%# c #5E593E",
+" c #929D9E",
+"*# c #77868D",
+"=# c #454C50",
+"-# c #2F2F2B",
+";# c #4A3D1A",
+"># c #3C451C",
+",# c #313B19",
+"'# c #30401D",
+")# c #23270F",
+"!# c #30301E",
+"~# c #6E7E49",
+"{# c #363617",
+"]# c #261605",
+"^# c #43360D",
+"/# c #5C5D29",
+"(# c #8F8D6B",
+"_# c #7F7563",
+":# c #65512D",
+"<# c #433E23",
+"[# c #546137",
+"}# c #485332",
+"|# c #454D45",
+"1# c #60644A",
+"2# c #666C36",
+"3# c #57462C",
+"4# c #634E2A",
+"5# c #5D4A25",
+"6# c #4A3819",
+"7# c #312513",
+"8# c #2B1F15",
+"9# c #1F2119",
+"0# c #16170F",
+"a# c #37391C",
+"b# c #373216",
+"c# c #313718",
+"d# c #1F2B11",
+"e# c #111208",
+"f# c #3C422F",
+"g# c #6C7B4A",
+"h# c #566631",
+"i# c #493915",
+"j# c #4A4314",
+"k# c #47501C",
+"l# c #4A5A23",
+"m# c #7B806A",
+"n# c #757260",
+"o# c #3B3E23",
+"p# c #3C4124",
+"q# c #252314",
+"r# c #3A413E",
+"s# c #405B52",
+"t# c #3E4331",
+"u# c #4C462A",
+"v# c #5E4C29",
+"w# c #654E26",
+"x# c #634C2A",
+"y# c #583E1E",
+"z# c #2C1D0E",
+"A# c #3E2C17",
+"B# c #42230F",
+"C# c #443216",
+"D# c #423817",
+"E# c #1C200E",
+"F# c #161605",
+"G# c #808473",
+"H# c #535B35",
+"I# c #394328",
+"J# c #232212",
+"K# c #423E17",
+"L# c #26370C",
+"M# c #30371A",
+"N# c #5A6B38",
+"O# c #6E7364",
+"P# c #5C6251",
+"Q# c #3D3E2D",
+"R# c #4A473C",
+"S# c #71664C",
+"T# c #775E33",
+"U# c #463921",
+"V# c #574326",
+"W# c #514528",
+"X# c #524C2D",
+"Y# c #606139",
+"Z# c #4C502A",
+"`# c #4B4923",
+" $ c #3F351E",
+".$ c #4F3F1E",
+"+$ c #53532B",
+"@$ c #202A13",
+"#$ c #2A2C16",
+"$$ c #2B2813",
+"%$ c #343525",
+"&$ c #655642",
+"*$ c #32311A",
+"=$ c #3B3B1C",
+"-$ c #3F3214",
+";$ c #3F3B19",
+">$ c #333D1B",
+",$ c #2B3215",
+"'$ c #272B27",
+")$ c #636E75",
+"!$ c #766856",
+"~$ c #6D6B3A",
+"{$ c #5D6D38",
+"]$ c #565E35",
+"^$ c #56663A",
+"/$ c #504F2F",
+"($ c #495331",
+"_$ c #404528",
+":$ c #50542E",
+"<$ c #607239",
+"[$ c #4B5D2F",
+"}$ c #364A22",
+"|$ c #26301C",
+"1$ c #171C12",
+"2$ c #222417",
+"3$ c #353D24",
+"4$ c #666C6B",
+"5$ c #3A3216",
+"6$ c #4B4B2D",
+"7$ c #8D9384",
+"8$ c #8A9379",
+"9$ c #353C21",
+"0$ c #363820",
+"a$ c #3A3728",
+"b$ c #434233",
+"c$ c #515034",
+"d$ c #4C5734",
+"e$ c #3C4929",
+"f$ c #353B26",
+"g$ c #3B3A24",
+"h$ c #575032",
+"i$ c #555C35",
+"j$ c #495531",
+"k$ c #4F6034",
+"l$ c #2F391F",
+"m$ c #2D3A20",
+"n$ c #353E30",
+"o$ c #1C2417",
+"p$ c #1D1D14",
+"q$ c #2D311D",
+"r$ c #333E2F",
+"s$ c #7E8388",
+"t$ c #63624A",
+"u$ c #585842",
+"v$ c #34372B",
+"w$ c #889191",
+"x$ c #919E91",
+"y$ c #4D5C34",
+"z$ c #565C4A",
+"A$ c #647171",
+"B$ c #595F52",
+"C$ c #6E6E5F",
+"D$ c #403E34",
+"E$ c #363125",
+"F$ c #594C38",
+"G$ c #655938",
+"H$ c #3E4527",
+"I$ c #343825",
+"J$ c #404D2B",
+"K$ c #2D3521",
+"L$ c #1A1B12",
+"M$ c #7D8988",
+"N$ c #333936",
+"O$ c #2B2D29",
+"P$ c #262C1B",
+"Q$ c #646660",
+"R$ c #738167",
+"S$ c #4B5138",
+"T$ c #3D3E34",
+"U$ c #4F5A4C",
+"V$ c #94A0A3",
+"W$ c #A3B0B1",
+"X$ c #454840",
+"Y$ c #3F3D2E",
+"Z$ c #6D6F64",
+"`$ c #666150",
+" % c #554F33",
+".% c #666242",
+"+% c #5D553C",
+"@% c #4C503C",
+"#% c #545B41",
+"$% c #3B3D32",
+"%% c #8B928E",
+"&% c #25261B",
+"*% c #6D7877",
+"=% c #4F5D63",
+"-% c #343731",
+";% c #555D58",
+">% c #909CA3",
+",% c #566259",
+"'% c #4E4B3E",
+")% c #3F4232",
+"!% c #616A68",
+"~% c #252620",
+"{% c #383D30",
+"]% c #6A7366",
+"^% c #707569",
+"/% c #4F5443",
+"(% c #485038",
+"_% c #505641",
+":% c #6F7861",
+"<% c #95A094",
+"[% c #8B958F",
+"}% c #676F67",
+"|% c #7E8582",
+"1% c #474B4A",
+"2% c #414137",
+"3% c #5F6B6A",
+"4% c #52626A",
+"5% c #454B49",
+"6% c #7B858C",
+"7% c #868D91",
+"8% c #5A615E",
+"9% c #393E3A",
+"0% c #5A6363",
+"a% c #484C44",
+"b% c #424A3E",
+"c% c #535C53",
+"d% c #474738",
+"e% c #5C5945",
+"f% c #7F8173",
+"g% c #939A95",
+"h% c #929C9C",
+"i% c #9EABAD",
+"j% c #A5B4B7",
+"k% c #89959A",
+"l% c #3E443E",
+"m% c #3C463B",
+"n% c #485450",
+"o% c #53626A",
+"p% c #899197",
+"q% c #5C6B6C",
+"r% c #515F5E",
+"s% c #65767B",
+"t% c #899DA4",
+"u% c #88999F",
+"v% c #8E9A9B",
+"w% c #828B88",
+"x% c #696F66",
+"y% c #7F8A8A",
+"z% c #7E8788",
+"A% c #849196",
+"B% c #899AA0",
+"C% c #646F75",
+"D% c #3C413F",
+"E% c #252925",
+"F% c #647074",
+"G% c #7B828B",
+"H% c #36464E",
+"I% c #505F67",
+"J% c #606F76",
+"K% c #55646E",
+"L% c #687B85",
+"M% c #748890",
+"N% c #75878D",
+"O% c #6F7F82",
+"P% c #75858A",
+"Q% c #798D95",
+"R% c #6C7E85",
+"S% c #5E6F77",
+"T% c #4D5A62",
+"U% c #626B72",
+"V% c #A2A6A6",
+"W% c #8E949C",
+"X% c #666F78",
+"Y% c #48555E",
+"Z% c #4B5C65",
+"`% c #50606A",
+" & c #5B6E7A",
+".& c #5D707B",
+"+& c #5D6F79",
+"@& c #5C6D77",
+"#& c #5D6D78",
+"$& c #5B6974",
+"%& c #626D75",
+"&& c #6D777E",
+"*& c #838A92",
+"=& c #878E95",
+"-& c #686F78",
+";& c #54606A",
+">& c #4F5C68",
+",& c #51606C",
+"'& c #515E6A",
+")& c #59636E",
+"!& c #6E757E",
+" ",
+" ",
+" . + @ # $ % & * = - ; > ",
+" , ' ) ! ~ { ] ^ / ( _ : < [ } ",
+" | 1 2 3 4 5 6 7 8 9 0 a b c d e f g ",
+" h i j k l m n o p q r s t u v w x y z A ",
+" B C D E F G H I J K L M N O P Q R S T U V W ",
+" X Y Z ` ...+.@.K #.$.%.&.*.=.-.;.>.,.'.).!.~.{. ",
+" ].^./.(._.:.<.[.}.|.1.2.3.4.5.6.7.8.9.0.a.b.c.d. ",
+" e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.A.B.C.D. ",
+" E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.`. +.+++@+ ",
+" #+$+%+&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+(+_+:+<+[+}+|+1+2+3+ ",
+" 4+I.5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+ ",
+" u+v+w+x+y+z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+ ",
+" W+X+Y+Z+`+ @.@+@@@#@$@%@&@*@=@-@;@>@,@'@)@!@~@{@]@^@/@(@ ",
+" _@:@<@[@}@|@1@2@3@4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@m@n@ ",
+" o@p@q@r@s@t@u@v@w@x@y@z@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@ ",
+" Q@R@S@T@U@V@W@X@Y@Z@`@ #.#+#@###$#%#*#=#-#;#>#,#'#)#!# ",
+" ~#{#]#^#/#(#_#:#<#[#}#|#1#2#3#4#5#6#7#8#9#0#a#b#c#d#e# f# ",
+" g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#.+y#z#A#B#C#D#E#F#G# ",
+" H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $.$+$@$#$$$%$ ",
+" &$*$=$-$;$>$,$'$)$!$~${$]$^$/$($_$:$<$[$}$|$1$2$3$4$ ",
+" 5$6$7$8$9$0$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$ ",
+" t$u$v$w$x$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$ ",
+" R$S$T$U$V$W$X$Y$Z$`$ %.%+%@%#%$%%%3 &%*%=%-%;% ",
+" >%,%'%)%!%~%{%]%^%/%(%_%:%<%[%}%|%1%2%3%4%5% ",
+" 6%7%8%9%0%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o% ",
+" p%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G% ",
+" H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W% ",
+" X%Y%Z%`% &.&+&@&$&%&&&*&=& ",
+" -&;&>&,&$&'&)&!& ",
+" "};
From 8701d6e6ee405f93b13270ab4ecb1dde7dc2cefa Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 22 Sep 2012 22:42:02 +0200
Subject: [PATCH 004/125] Fixed: Replaced "Reqiures" by "Requires" in
pkg-config files
---
code/nel/src/3d/driver/opengl/nel-driverogl.pc | 2 +-
code/nel/src/3d/driver/opengl/nel-driverogl.pc.in | 2 +-
code/nel/src/3d/nel-3d.pc | 2 +-
code/nel/src/3d/nel-3d.pc.in | 2 +-
code/nel/src/georges/nel-georges.pc.in | 2 +-
code/nel/src/ligo/nel-ligo.pc.in | 2 +-
code/nel/src/misc/nel-misc.pc | 2 +-
code/nel/src/misc/nel-misc.pc.in | 2 +-
code/nel/src/net/nel-net.pc.in | 2 +-
code/nel/src/pacs/nel-pacs.pc.in | 2 +-
code/nel/src/sound/nel-sound.pc.in | 2 +-
11 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/code/nel/src/3d/driver/opengl/nel-driverogl.pc b/code/nel/src/3d/driver/opengl/nel-driverogl.pc
index 867ad515e..03a2b1294 100644
--- a/code/nel/src/3d/driver/opengl/nel-driverogl.pc
+++ b/code/nel/src/3d/driver/opengl/nel-driverogl.pc
@@ -6,7 +6,7 @@ includedir=${prefix}/include
Name: nel-driverogl
Version: 0.5.0
Description: NeL 0.5.0
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: -ldl -lpthread -lxml2 -lGL -lXxf86vm -lXmu
Cflags: -I${includedir} -DXF86VIDMODE
diff --git a/code/nel/src/3d/driver/opengl/nel-driverogl.pc.in b/code/nel/src/3d/driver/opengl/nel-driverogl.pc.in
index 282e580f1..6f43c5f14 100644
--- a/code/nel/src/3d/driver/opengl/nel-driverogl.pc.in
+++ b/code/nel/src/3d/driver/opengl/nel-driverogl.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-driverogl
Version: @VERSION@
Description: NeL @VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ @OPENGL_LIBS@ @XF86VIDMODE_LIBS@ -lXmu
Cflags: -I${includedir} @OPENGL_CFLAGS@ @XF86VIDMODE_CFLAGS@
diff --git a/code/nel/src/3d/nel-3d.pc b/code/nel/src/3d/nel-3d.pc
index 638961276..9420c67bf 100644
--- a/code/nel/src/3d/nel-3d.pc
+++ b/code/nel/src/3d/nel-3d.pc
@@ -6,7 +6,7 @@ includedir=${prefix}/include
Name: nel-3d
Version: 0.5.0
Description: NeL 0.5.0
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: -ldl -lpthread -lxml2 -lfreetype -lz -lc
Cflags: -I${includedir} -I/usr/include/freetype2
diff --git a/code/nel/src/3d/nel-3d.pc.in b/code/nel/src/3d/nel-3d.pc.in
index ade3e2d08..a3c06762a 100644
--- a/code/nel/src/3d/nel-3d.pc.in
+++ b/code/nel/src/3d/nel-3d.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-3d
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ @FREETYPE_LIBS@ -lc
Cflags: -I${includedir} @FREETYPE_CFLAGS@
diff --git a/code/nel/src/georges/nel-georges.pc.in b/code/nel/src/georges/nel-georges.pc.in
index 4aa509aa0..5a8703714 100644
--- a/code/nel/src/georges/nel-georges.pc.in
+++ b/code/nel/src/georges/nel-georges.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-georges
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc
Cflags: -I${includedir}
diff --git a/code/nel/src/ligo/nel-ligo.pc.in b/code/nel/src/ligo/nel-ligo.pc.in
index d4a535bac..dfe27ceac 100644
--- a/code/nel/src/ligo/nel-ligo.pc.in
+++ b/code/nel/src/ligo/nel-ligo.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-ligo
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc
Cflags: -I${includedir}
diff --git a/code/nel/src/misc/nel-misc.pc b/code/nel/src/misc/nel-misc.pc
index db7c97b22..4d28291ed 100644
--- a/code/nel/src/misc/nel-misc.pc
+++ b/code/nel/src/misc/nel-misc.pc
@@ -6,7 +6,7 @@ includedir=${prefix}/include
Name: nel-misc
Version: 0.5.0
Description: NeL 0.5.0
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: -ldl -lpthread -lxml2 -lc -lpthread -lrt -ldl
Cflags: -I${includedir} -lc -lpthread -lrt -ldl
diff --git a/code/nel/src/misc/nel-misc.pc.in b/code/nel/src/misc/nel-misc.pc.in
index c4d447c42..abea860a1 100644
--- a/code/nel/src/misc/nel-misc.pc.in
+++ b/code/nel/src/misc/nel-misc.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-misc
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc -lpthread -lrt -ldl
Cflags: -I${includedir} -lc -lpthread -lrt -ldl
diff --git a/code/nel/src/net/nel-net.pc.in b/code/nel/src/net/nel-net.pc.in
index 0fb2a0462..cbbf7ab50 100644
--- a/code/nel/src/net/nel-net.pc.in
+++ b/code/nel/src/net/nel-net.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-net
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc -lpthread -lrt -ldl
Cflags: -I${includedir} -lc -lpthread -lrt -ldl
diff --git a/code/nel/src/pacs/nel-pacs.pc.in b/code/nel/src/pacs/nel-pacs.pc.in
index 133b51d53..e1729f105 100644
--- a/code/nel/src/pacs/nel-pacs.pc.in
+++ b/code/nel/src/pacs/nel-pacs.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-pacs
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc -lpthread -lrt -ldl
Cflags: -I${includedir} -lc -lpthread -lrt -ldl
diff --git a/code/nel/src/sound/nel-sound.pc.in b/code/nel/src/sound/nel-sound.pc.in
index 9994e967e..44ff6e1f0 100644
--- a/code/nel/src/sound/nel-sound.pc.in
+++ b/code/nel/src/sound/nel-sound.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: nel-sound
Version: @NL_VERSION@
Description: NeL @NL_VERSION@
-Reqiures:
+Requires:
Libs: -L${libdir}
Libs.private: @LIBS@ -lc -lpthread -lrt -ldl
Cflags: -I${includedir} -lc -lpthread -lrt -ldl
From 7a04e920e1cbe766d2992a4be7fe727dea43fcc2 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 22 Sep 2012 22:57:38 +0200
Subject: [PATCH 005/125] Fixed: #1493 MultiArch support
---
code/CMakeModules/nel.cmake | 110 ++++--
code/config.h.cmake | 18 +-
code/nel/CMakeLists.txt | 6 +-
code/nel/samples/3d/cegui/CMakeLists.txt | 4 +-
.../samples/3d/cluster_viewer/CMakeLists.txt | 12 +-
code/nel/samples/3d/font/CMakeLists.txt | 4 +-
code/nel/samples/georges/CMakeLists.txt | 4 +-
.../samples/misc/configfile/CMakeLists.txt | 4 +-
code/nel/samples/misc/i18n/CMakeLists.txt | 4 +-
code/nel/samples/net/chat/CMakeLists.txt | 4 +-
.../net/class_transport/CMakeLists.txt | 4 +-
.../samples/net/login_system/CMakeLists.txt | 4 +-
code/nel/samples/net/udp/CMakeLists.txt | 6 +-
code/nel/samples/pacs/CMakeLists.txt | 6 +-
.../sound/sound_sources/CMakeLists.txt | 4 +-
code/nel/src/3d/CMakeLists.txt | 2 +-
.../nel/src/3d/driver/direct3d/CMakeLists.txt | 2 +-
code/nel/src/3d/driver/opengl/CMakeLists.txt | 2 +-
.../nel/src/3d/driver/opengles/CMakeLists.txt | 2 +-
code/nel/src/cegui/CMakeLists.txt | 2 +-
code/nel/src/georges/CMakeLists.txt | 2 +-
code/nel/src/ligo/CMakeLists.txt | 2 +-
code/nel/src/logic/CMakeLists.txt | 2 +-
code/nel/src/misc/CMakeLists.txt | 2 +-
code/nel/src/net/CMakeLists.txt | 2 +-
code/nel/src/pacs/CMakeLists.txt | 2 +-
code/nel/src/sound/CMakeLists.txt | 2 +-
code/nel/src/sound/driver/CMakeLists.txt | 2 +-
.../src/sound/driver/dsound/CMakeLists.txt | 2 +-
code/nel/src/sound/driver/fmod/CMakeLists.txt | 2 +-
.../src/sound/driver/openal/CMakeLists.txt | 2 +-
.../src/sound/driver/xaudio2/CMakeLists.txt | 2 +-
.../tools/3d/ligo/plugin_max/CMakeLists.txt | 2 +-
.../nel/tools/3d/object_viewer/CMakeLists.txt | 2 +-
.../tools/3d/object_viewer_qt/CMakeLists.txt | 2 +-
.../src/plugins/bnp_manager/CMakeLists.txt | 2 +-
.../src/plugins/core/CMakeLists.txt | 2 +-
.../src/plugins/disp_sheet_id/CMakeLists.txt | 2 +-
.../src/plugins/example/CMakeLists.txt | 2 +-
.../src/plugins/georges_editor/CMakeLists.txt | 2 +-
.../plugins/landscape_editor/CMakeLists.txt | 2 +-
.../src/plugins/log/CMakeLists.txt | 2 +-
.../plugins/mission_compiler/CMakeLists.txt | 2 +-
.../src/plugins/object_viewer/CMakeLists.txt | 328 +++++++++---------
.../plugins/ovqt_sheet_builder/CMakeLists.txt | 2 +-
.../translation_manager/CMakeLists.txt | 2 +-
.../src/plugins/zone_painter/CMakeLists.txt | 2 +-
.../3d/object_viewer_widget/CMakeLists.txt | 2 +-
.../nel_3dsmax_shared/CMakeLists.txt | 2 +-
.../3d/plugin_max/nel_export/CMakeLists.txt | 2 +-
.../3d/plugin_max/nel_mesh_lib/CMakeLists.txt | 2 +-
.../nel_patch_converter/CMakeLists.txt | 2 +-
.../plugin_max/nel_patch_edit/CMakeLists.txt | 2 +-
.../nel_patch_edit_adv/CMakeLists.txt | 2 +-
.../plugin_max/nel_patch_lib/CMakeLists.txt | 2 +-
.../plugin_max/nel_patch_paint/CMakeLists.txt | 2 +-
.../nel_vertex_tree_paint/CMakeLists.txt | 2 +-
.../3d/plugin_max/tile_utility/CMakeLists.txt | 2 +-
code/nel/tools/3d/zviewer/CMakeLists.txt | 4 +-
.../logic/logic_editor_dll/CMakeLists.txt | 2 +-
.../tools/misc/make_sheet_id/CMakeLists.txt | 2 +-
.../tools/misc/words_dic_qt/CMakeLists.txt | 2 +-
.../tools/pacs/build_ig_boxes/CMakeLists.txt | 2 +-
.../pacs/build_indoor_rbank/CMakeLists.txt | 2 +-
.../nel/tools/pacs/build_rbank/CMakeLists.txt | 2 +-
.../admin_executor_service/CMakeLists.txt | 2 +-
code/nelns/admin_service/CMakeLists.txt | 2 +-
code/nelns/login_service/CMakeLists.txt | 2 +-
.../nel_launcher_qt/CMakeLists.txt | 2 +-
code/nelns/naming_service/CMakeLists.txt | 2 +-
code/nelns/welcome_service/CMakeLists.txt | 2 +-
.../client/src/client_sheets/CMakeLists.txt | 2 +-
.../ryzom/client/src/seven_zip/CMakeLists.txt | 2 +-
.../common/src/game_share/CMakeLists.txt | 2 +-
.../server/src/admin_modules/CMakeLists.txt | 2 +-
code/ryzom/server/src/ai_share/CMakeLists.txt | 2 +-
.../src/gameplay_module_lib/CMakeLists.txt | 2 +-
code/ryzom/server/src/pd_lib/CMakeLists.txt | 2 +-
.../server/src/server_share/CMakeLists.txt | 2 +-
.../tools/leveldesign/export/CMakeLists.txt | 2 +-
.../leveldesign/georges_dll/CMakeLists.txt | 2 +-
.../georges_editor_qt/CMakeLists.txt | 2 +-
.../georges_plugin_sound/CMakeLists.txt | 2 +-
.../mission_compiler_lib/CMakeLists.txt | 2 +-
.../land_export_lib/CMakeLists.txt | 2 +-
.../CMakeLists.txt | 2 +-
.../world_editor_graph_plugin/CMakeLists.txt | 2 +-
.../world_editor_plugin/CMakeLists.txt | 2 +-
.../CMakeLists.txt | 2 +-
.../CMakeLists.txt | 2 +-
.../world_editor_sound_plugin/CMakeLists.txt | 2 +-
91 files changed, 367 insertions(+), 307 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 624d47ab9..5768987e3 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -418,6 +418,17 @@ MACRO(NL_SETUP_BUILD)
MESSAGE(STATUS "Compiling on ${HOST_CPU} for ${TARGET_CPU}")
ENDIF("${HOST_CPU}" STREQUAL "${TARGET_CPU}")
+ # Use values from environment variables
+ SET(PLATFORM_CFLAGS "$ENV{CFLAGS} ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_LINKFLAGS "$ENV{LDFLAGS} ${PLATFORM_LINKFLAGS}")
+
+ # Remove -g flag because we are managing it ourself
+ STRING(REPLACE "-g" "" PLATFORM_CFLAGS ${PLATFORM_CFLAGS})
+
+ # Strip spaces
+ STRING(STRIP ${PLATFORM_CFLAGS} PLATFORM_CFLAGS)
+ STRING(STRIP ${PLATFORM_LINKFLAGS} PLATFORM_LINKFLAGS)
+
IF(TARGET_CPU STREQUAL "x86_64")
SET(TARGET_X64 1)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_X86_64")
@@ -468,9 +479,6 @@ MACRO(NL_SETUP_BUILD)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /W3 /Zm1000 /MP /Gy-")
- # Common link flags
- SET(PLATFORM_LINKFLAGS "")
-
IF(TARGET_X64)
# Fix a bug with Intellisense
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_WIN64")
@@ -617,119 +625,171 @@ MACRO(NL_SETUP_PREFIX_PATHS)
IF(NOT NL_ETC_PREFIX)
IF(WIN32)
SET(NL_ETC_PREFIX "../etc/nel" CACHE PATH "Installation path for configurations")
+ SET(NL_ETC_ABSOLUTE_PREFIX ${NL_ETC_PREFIX})
ELSE(WIN32)
- SET(NL_ETC_PREFIX "${CMAKE_INSTALL_PREFIX}/etc/nel" CACHE PATH "Installation path for configurations")
+ SET(NL_ETC_PREFIX "etc/nel" CACHE PATH "Installation path for configurations")
+ SET(NL_ETC_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_ETC_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_ETC_PREFIX)
+ SET(NL_ETC_ABSOLUTE_PREFIX ${NL_ETC_PREFIX})
ENDIF(NOT NL_ETC_PREFIX)
## Allow override of install_prefix/share path.
IF(NOT NL_SHARE_PREFIX)
IF(WIN32)
SET(NL_SHARE_PREFIX "../share/nel" CACHE PATH "Installation path for data.")
+ SET(NL_SHARE_ABSOLUTE_PREFIX ${NL_SHARE_PREFIX})
ELSE(WIN32)
- SET(NL_SHARE_PREFIX "${CMAKE_INSTALL_PREFIX}/share/nel" CACHE PATH "Installation path for data.")
+ SET(NL_SHARE_PREFIX "share/nel" CACHE PATH "Installation path for data.")
+ SET(NL_SHARE_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_SHARE_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_SHARE_PREFIX)
+ SET(NL_SHARE_ABSOLUTE_PREFIX ${NL_SHARE_PREFIX})
ENDIF(NOT NL_SHARE_PREFIX)
## Allow override of install_prefix/sbin path.
IF(NOT NL_SBIN_PREFIX)
IF(WIN32)
SET(NL_SBIN_PREFIX "../sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(NL_SBIN_ABSOLUTE_PREFIX ${NL_SBIN_PREFIX})
ELSE(WIN32)
- SET(NL_SBIN_PREFIX "${CMAKE_INSTALL_PREFIX}/sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(NL_SBIN_PREFIX "sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(NL_SBIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_SBIN_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_SBIN_PREFIX)
+ SET(NL_SBIN_ABSOLUTE_PREFIX ${NL_SBIN_PREFIX})
ENDIF(NOT NL_SBIN_PREFIX)
## Allow override of install_prefix/bin path.
IF(NOT NL_BIN_PREFIX)
IF(WIN32)
SET(NL_BIN_PREFIX "../bin" CACHE PATH "Installation path for tools and applications.")
+ SET(NL_BIN_ABSOLUTE_PREFIX ${NL_BIN_PREFIX})
ELSE(WIN32)
- SET(NL_BIN_PREFIX "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation path for tools and applications.")
+ SET(NL_BIN_PREFIX "bin" CACHE PATH "Installation path for tools and applications.")
+ SET(NL_BIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_BIN_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_BIN_PREFIX)
+ SET(NL_BIN_ABSOLUTE_PREFIX ${NL_BIN_PREFIX})
ENDIF(NOT NL_BIN_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT NL_LIB_PREFIX)
IF(WIN32)
SET(NL_LIB_PREFIX "../lib" CACHE PATH "Installation path for libraries.")
+ SET(NL_LIB_ABSOLUTE_PREFIX ${NL_LIB_PREFIX})
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_PREFIX "${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ SET(NL_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
ELSE(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_PREFIX "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation path for libraries.")
+ SET(NL_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(NL_LIB_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_LIB_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_LIB_PREFIX)
+ SET(NL_LIB_ABSOLUTE_PREFIX ${NL_LIB_PREFIX})
ENDIF(NOT NL_LIB_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT NL_DRIVER_PREFIX)
IF(WIN32)
SET(NL_DRIVER_PREFIX "../lib" CACHE PATH "Installation path for drivers.")
+ SET(NL_DRIVER_ABSOLUTE_PREFIX ${NL_DRIVER_PREFIX})
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_DRIVER_PREFIX "${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
+ SET(NL_DRIVER_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
ELSE(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_DRIVER_PREFIX "${CMAKE_INSTALL_PREFIX}/lib/nel" CACHE PATH "Installation path for drivers.")
+ SET(NL_DRIVER_PREFIX "lib/nel" CACHE PATH "Installation path for drivers.")
ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(NL_DRIVER_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_DRIVER_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT NL_DRIVER_PREFIX)
+ SET(NL_DRIVER_ABSOLUTE_PREFIX ${NL_DRIVER_PREFIX})
ENDIF(NOT NL_DRIVER_PREFIX)
ENDMACRO(NL_SETUP_PREFIX_PATHS)
MACRO(RYZOM_SETUP_PREFIX_PATHS)
- ## Allow override of install_prefix path.
- IF(NOT RYZOM_PREFIX)
- IF(WIN32)
- SET(RYZOM_PREFIX "." CACHE PATH "Installation path")
- ELSE(WIN32)
- SET(RYZOM_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE PATH "Installation path")
- ENDIF(WIN32)
- ENDIF(NOT RYZOM_PREFIX)
-
## Allow override of install_prefix/etc path.
IF(NOT RYZOM_ETC_PREFIX)
IF(WIN32)
SET(RYZOM_ETC_PREFIX "." CACHE PATH "Installation path for configurations")
+ SET(RYZOM_ETC_ABSOLUTE_PREFIX ${RYZOM_ETC_PREFIX})
ELSE(WIN32)
- SET(RYZOM_ETC_PREFIX "${RYZOM_PREFIX}/etc/ryzom" CACHE PATH "Installation path for configurations")
+ SET(RYZOM_ETC_PREFIX "etc/ryzom" CACHE PATH "Installation path for configurations")
+ SET(RYZOM_ETC_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_ETC_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT RYZOM_ETC_PREFIX)
+ SET(RYZOM_ETC_ABSOLUTE_PREFIX ${RYZOM_ETC_PREFIX})
ENDIF(NOT RYZOM_ETC_PREFIX)
## Allow override of install_prefix/share path.
IF(NOT RYZOM_SHARE_PREFIX)
IF(WIN32)
SET(RYZOM_SHARE_PREFIX "." CACHE PATH "Installation path for data.")
+ SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${RYZOM_SHARE_PREFIX})
ELSE(WIN32)
- SET(RYZOM_SHARE_PREFIX "${RYZOM_PREFIX}/share/ryzom" CACHE PATH "Installation path for data.")
+ SET(RYZOM_SHARE_PREFIX "share/ryzom" CACHE PATH "Installation path for data.")
+ SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_SHARE_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT RYZOM_SHARE_PREFIX)
+ SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${RYZOM_SHARE_PREFIX})
ENDIF(NOT RYZOM_SHARE_PREFIX)
## Allow override of install_prefix/sbin path.
IF(NOT RYZOM_SBIN_PREFIX)
IF(WIN32)
SET(RYZOM_SBIN_PREFIX "." CACHE PATH "Installation path for admin tools and services.")
+ SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${RYZOM_SBIN_PREFIX})
ELSE(WIN32)
- SET(RYZOM_SBIN_PREFIX "${RYZOM_PREFIX}/sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(RYZOM_SBIN_PREFIX "sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_SBIN_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT RYZOM_SBIN_PREFIX)
+ SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${RYZOM_SBIN_PREFIX})
ENDIF(NOT RYZOM_SBIN_PREFIX)
## Allow override of install_prefix/bin path.
IF(NOT RYZOM_BIN_PREFIX)
IF(WIN32)
SET(RYZOM_BIN_PREFIX "." CACHE PATH "Installation path for tools and applications.")
+ SET(RYZOM_BIN_ABSOLUTE_PREFIX ${RYZOM_BIN_PREFIX})
ELSE(WIN32)
- SET(RYZOM_BIN_PREFIX "${RYZOM_PREFIX}/bin" CACHE PATH "Installation path for tools.")
+ SET(RYZOM_BIN_PREFIX "bin" CACHE PATH "Installation path for tools.")
+ SET(RYZOM_BIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_BIN_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT RYZOM_BIN_PREFIX)
+ SET(RYZOM_BIN_ABSOLUTE_PREFIX ${RYZOM_BIN_PREFIX})
ENDIF(NOT RYZOM_BIN_PREFIX)
+ ## Allow override of install_prefix/lib path.
+ IF(NOT RYZOM_LIB_PREFIX)
+ IF(WIN32)
+ SET(RYZOM_LIB_PREFIX "." CACHE PATH "Installation path for libraries.")
+ SET(RYZOM_LIB_ABSOLUTE_PREFIX ${RYZOM_LIB_PREFIX})
+ ELSE(WIN32)
+ IF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
+ ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_LIB_PREFIX})
+ ENDIF(WIN32)
+ ELSE(NOT RYZOM_LIB_PREFIX)
+ SET(RYZOM_LIB_ABSOLUTE_PREFIX ${RYZOM_LIB_PREFIX})
+ ENDIF(NOT RYZOM_LIB_PREFIX)
+
## Allow override of install_prefix/games path.
IF(NOT RYZOM_GAMES_PREFIX)
IF(WIN32)
SET(RYZOM_GAMES_PREFIX "." CACHE PATH "Installation path for tools and applications.")
+ SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${RYZOM_GAMES_PREFIX})
ELSE(WIN32)
- SET(RYZOM_GAMES_PREFIX "${RYZOM_PREFIX}/games" CACHE PATH "Installation path for client.")
+ SET(RYZOM_GAMES_PREFIX "games" CACHE PATH "Installation path for client.")
+ SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_GAMES_PREFIX})
ENDIF(WIN32)
+ ELSE(NOT RYZOM_GAMES_PREFIX)
+ SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${RYZOM_GAMES_PREFIX})
ENDIF(NOT RYZOM_GAMES_PREFIX)
ENDMACRO(RYZOM_SETUP_PREFIX_PATHS)
diff --git a/code/config.h.cmake b/code/config.h.cmake
index 2f2ff8095..6368e179b 100644
--- a/code/config.h.cmake
+++ b/code/config.h.cmake
@@ -43,15 +43,15 @@
#cmakedefine NL_DSOUND_AVAILABLE ${NL_DSOUND_AVAILABLE}
#cmakedefine NL_XAUDIO2_AVAILABLE ${NL_XAUDIO2_AVAILABLE}
-#cmakedefine NL_BIN_PREFIX "${NL_BIN_PREFIX}"
-#cmakedefine NL_ETC_PREFIX "${NL_ETC_PREFIX}"
-#cmakedefine NL_SHARE_PREFIX "${NL_SHARE_PREFIX}"
-#cmakedefine NL_LIB_PREFIX "${NL_LIB_PREFIX}"
-#cmakedefine NL_DRIVER_PREFIX "${NL_DRIVER_PREFIX}"
+#cmakedefine NL_BIN_PREFIX "${NL_BIN_ABSOLUTE_PREFIX}"
+#cmakedefine NL_ETC_PREFIX "${NL_ETC_ABSOLUTE_PREFIX}"
+#cmakedefine NL_SHARE_PREFIX "${NL_SHARE_ABSOLUTE_PREFIX}"
+#cmakedefine NL_LIB_PREFIX "${NL_LIB_ABSOLUTE_PREFIX}"
+#cmakedefine NL_DRIVER_PREFIX "${NL_DRIVER_ABSOLUTE_PREFIX}"
-#cmakedefine RYZOM_PREFIX "${RYZOM_PREFIX}"
-#cmakedefine RYZOM_BIN_PREFIX "${RYZOM_BIN_PREFIX}"
-#cmakedefine RYZOM_ETC_PREFIX "${RYZOM_ETC_PREFIX}"
-#cmakedefine RYZOM_SHARE_PREFIX "${RYZOM_SHARE_PREFIX}"
+#cmakedefine RYZOM_PREFIX "${RYZOM_ABSOLUTE_PREFIX}"
+#cmakedefine RYZOM_BIN_PREFIX "${RYZOM_BIN_ABSOLUTE_PREFIX}"
+#cmakedefine RYZOM_ETC_PREFIX "${RYZOM_ETC_ABSOLUTE_PREFIX}"
+#cmakedefine RYZOM_SHARE_PREFIX "${RYZOM_SHARE_ABSOLUTE_PREFIX}"
#endif // CONFIG_H
diff --git a/code/nel/CMakeLists.txt b/code/nel/CMakeLists.txt
index 08b4babf0..745278cd7 100644
--- a/code/nel/CMakeLists.txt
+++ b/code/nel/CMakeLists.txt
@@ -44,8 +44,8 @@ ENDIF(WITH_GTK)
IF(WITH_INSTALL_LIBRARIES)
IF(UNIX)
SET(prefix ${CMAKE_INSTALL_PREFIX})
- SET(exec_prefix ${CMAKE_INSTALL_PREFIX}/bin)
- SET(libdir ${CMAKE_INSTALL_PREFIX}/lib)
+ SET(exec_prefix ${NL_BIN_ABSOLUTE_PREFIX})
+ SET(libdir ${NL_LIB_ABSOLUTE_PREFIX})
SET(includedir ${CMAKE_INSTALL_PREFIX}/include)
SET(enable_ligo ${WITH_LIGO})
SET(enable_logic ${WITH_LOGIC})
@@ -56,7 +56,7 @@ IF(WITH_INSTALL_LIBRARIES)
SET(enable_sound ${WITH_SOUND})
CONFIGURE_FILE(nel-config.in ${CMAKE_CURRENT_BINARY_DIR}/nel-config)
- INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/nel-config DESTINATION bin)
+ INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/nel-config DESTINATION ${NL_BIN_PREFIX})
ENDIF(UNIX)
ADD_SUBDIRECTORY(include)
diff --git a/code/nel/samples/3d/cegui/CMakeLists.txt b/code/nel/samples/3d/cegui/CMakeLists.txt
index c1da6eafe..b9afa5729 100644
--- a/code/nel/samples/3d/cegui/CMakeLists.txt
+++ b/code/nel/samples/3d/cegui/CMakeLists.txt
@@ -2,7 +2,7 @@ FILE(GLOB SRC *.cpp *.h)
ADD_EXECUTABLE(nl_sample_cegui WIN32 ${SRC})
-ADD_DEFINITIONS(-DCEGUI_DATA_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_cegui/datafiles/\\"")
+ADD_DEFINITIONS(-DCEGUI_DATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_cegui/datafiles/\\"")
INCLUDE_DIRECTORIES(${CEGUI_INCLUDE_DIRS})
@@ -12,7 +12,7 @@ NL_ADD_RUNTIME_FLAGS(nl_sample_cegui)
INSTALL(TARGETS nl_sample_cegui RUNTIME DESTINATION bin COMPONENT samples3d)
INSTALL(DIRECTORY datafiles/
- DESTINATION share/nel/nl_sample_cegui/datafiles
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_cegui/datafiles
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
index 4d1bb0d68..a68bf0d84 100644
--- a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
+++ b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
@@ -2,34 +2,34 @@ FILE(GLOB SRC *.cpp)
ADD_EXECUTABLE(nl_sample_clusterview WIN32 ${SRC})
-ADD_DEFINITIONS(-DCV_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_clusterview/\\"")
+ADD_DEFINITIONS(-DCV_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_clusterview/\\"")
TARGET_LINK_LIBRARIES(nl_sample_clusterview nelmisc nel3d)
NL_ADD_RUNTIME_FLAGS(nl_sample_clusterview)
NL_DEFAULT_PROPS(nl_sample_clusterview "NeL, Samples, 3D: Cluster Viewer")
INSTALL(TARGETS nl_sample_clusterview RUNTIME DESTINATION bin COMPONENT samples3d)
-INSTALL(FILES main.cvs readme.txt DESTINATION share/nel/nl_sample_clusterview COMPONENT samples3d)
+INSTALL(FILES main.cvs readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview COMPONENT samples3d)
INSTALL(DIRECTORY groups/
- DESTINATION share/nel/nl_sample_clusterview/groups
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview/groups
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
PATTERN "Makefile*" EXCLUDE)
INSTALL(DIRECTORY fonts/
- DESTINATION share/nel/nl_sample_clusterview/fonts
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview/fonts
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
PATTERN "Makefile*" EXCLUDE)
INSTALL(DIRECTORY max/
- DESTINATION share/nel/nl_sample_clusterview/max
+ DESTINATION ${NL_SHARE_PREFIX}/nel/nl_sample_clusterview/max
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
PATTERN "Makefile*" EXCLUDE)
INSTALL(DIRECTORY shapes/
- DESTINATION share/nel/nl_sample_clusterview/shapes
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview/shapes
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/samples/3d/font/CMakeLists.txt b/code/nel/samples/3d/font/CMakeLists.txt
index d3024fe0b..eb01575da 100644
--- a/code/nel/samples/3d/font/CMakeLists.txt
+++ b/code/nel/samples/3d/font/CMakeLists.txt
@@ -2,11 +2,11 @@ FILE(GLOB SRC *.cpp)
ADD_EXECUTABLE(nl_sample_font WIN32 ${SRC})
-ADD_DEFINITIONS(-DFONT_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_font/\\"")
+ADD_DEFINITIONS(-DFONT_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_font/\\"")
TARGET_LINK_LIBRARIES(nl_sample_font nelmisc nel3d)
NL_DEFAULT_PROPS(nl_sample_font "NeL, Samples, 3D: Font")
NL_ADD_RUNTIME_FLAGS(nl_sample_font)
INSTALL(TARGETS nl_sample_font RUNTIME DESTINATION bin COMPONENT samples3d)
-INSTALL(FILES beteckna.ttf DESTINATION share/nel/nl_sample_font COMPONENT samples3d)
+INSTALL(FILES beteckna.ttf DESTINATION ${NL_SHARE_PREFIX}/nl_sample_font COMPONENT samples3d)
diff --git a/code/nel/samples/georges/CMakeLists.txt b/code/nel/samples/georges/CMakeLists.txt
index 7740a8d14..474575337 100644
--- a/code/nel/samples/georges/CMakeLists.txt
+++ b/code/nel/samples/georges/CMakeLists.txt
@@ -2,7 +2,7 @@ FILE(GLOB SRC *.cpp)
ADD_EXECUTABLE(nl_sample_georges ${SRC})
-ADD_DEFINITIONS(-DGF_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_georges/\\"")
+ADD_DEFINITIONS(-DGF_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_georges/\\"")
TARGET_LINK_LIBRARIES(nl_sample_georges nelgeorges nelmisc)
NL_DEFAULT_PROPS(nl_sample_georges "NeL, Samples: Georges")
@@ -10,4 +10,4 @@ NL_ADD_RUNTIME_FLAGS(nl_sample_georges)
INSTALL(TARGETS nl_sample_georges RUNTIME DESTINATION bin COMPONENT samplesgeorges)
INSTALL(FILES boolean.typ coolfilesinfo.dfn default.sample_config int.typ positiondata.dfn sample_config.dfn string.typ sheet_id.bin
- DESTINATION share/nel/nl_sample_georges/ COMPONENT samplesgeorges)
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_georges/ COMPONENT samplesgeorges)
diff --git a/code/nel/samples/misc/configfile/CMakeLists.txt b/code/nel/samples/misc/configfile/CMakeLists.txt
index d826aafa0..723f65b29 100644
--- a/code/nel/samples/misc/configfile/CMakeLists.txt
+++ b/code/nel/samples/misc/configfile/CMakeLists.txt
@@ -2,11 +2,11 @@ FILE(GLOB SRC *.cpp)
ADD_EXECUTABLE(nl_sample_configfile ${SRC})
-ADD_DEFINITIONS(-DNL_SAMPLE_CFG="\\"${NL_SHARE_PREFIX}/nl_sample_configfile/\\"")
+ADD_DEFINITIONS(-DNL_SAMPLE_CFG="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_configfile/\\"")
TARGET_LINK_LIBRARIES(nl_sample_configfile nelmisc)
NL_DEFAULT_PROPS(nl_sample_configfile "NeL, Samples, Misc: Config Files")
NL_ADD_RUNTIME_FLAGS(nl_sample_configfile)
INSTALL(TARGETS nl_sample_configfile RUNTIME DESTINATION bin COMPONENT samplesmisc)
-INSTALL(FILES simpletest.txt DESTINATION share/nel/nl_sample_configfile COMPONENT samplesmisc)
+INSTALL(FILES simpletest.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_configfile COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/i18n/CMakeLists.txt b/code/nel/samples/misc/i18n/CMakeLists.txt
index f2787175e..c5a510201 100644
--- a/code/nel/samples/misc/i18n/CMakeLists.txt
+++ b/code/nel/samples/misc/i18n/CMakeLists.txt
@@ -2,11 +2,11 @@ FILE(GLOB SRC *.cpp)
ADD_EXECUTABLE(nl_sample_i18n ${SRC})
-ADD_DEFINITIONS(-DNL_LANG_DATA="\\"${NL_SHARE_PREFIX}/nl_sample_i18n/\\"")
+ADD_DEFINITIONS(-DNL_LANG_DATA="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_i18n/\\"")
TARGET_LINK_LIBRARIES(nl_sample_i18n nelmisc)
NL_DEFAULT_PROPS(nl_sample_i18n "NeL, Samples, Misc: I18N")
NL_ADD_RUNTIME_FLAGS(nl_sample_i18n)
INSTALL(TARGETS nl_sample_i18n RUNTIME DESTINATION bin COMPONENT samplesmisc)
-INSTALL(FILES de.uxt en.uxt fr.uxt DESTINATION share/nel/nl_sample_i18n COMPONENT samplesmisc)
+INSTALL(FILES de.uxt en.uxt fr.uxt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_i18n COMPONENT samplesmisc)
diff --git a/code/nel/samples/net/chat/CMakeLists.txt b/code/nel/samples/net/chat/CMakeLists.txt
index a304bced9..7db4550d6 100644
--- a/code/nel/samples/net/chat/CMakeLists.txt
+++ b/code/nel/samples/net/chat/CMakeLists.txt
@@ -2,7 +2,7 @@ ADD_EXECUTABLE(nl_sample_chatclient client.cpp kbhit.cpp kbhit.h)
ADD_EXECUTABLE(nl_sample_chatserver WIN32 server.cpp)
-ADD_DEFINITIONS(-DCHAT_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_chat/\\"")
+ADD_DEFINITIONS(-DCHAT_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_chat/\\"")
TARGET_LINK_LIBRARIES(nl_sample_chatclient nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_chatclient "NeL, Samples, Net, Chat: Chat Client")
@@ -13,4 +13,4 @@ NL_DEFAULT_PROPS(nl_sample_chatserver "NeL, Samples, Net, Chat: Chat Server")
NL_ADD_RUNTIME_FLAGS(nl_sample_chatserver)
INSTALL(TARGETS nl_sample_chatclient nl_sample_chatserver RUNTIME DESTINATION bin COMPONENT samplesnet)
-INSTALL(FILES chat_service.cfg client.cfg DESTINATION share/nel/nl_sample_chat COMPONENT samplesnet)
+INSTALL(FILES chat_service.cfg client.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_chat COMPONENT samplesnet)
diff --git a/code/nel/samples/net/class_transport/CMakeLists.txt b/code/nel/samples/net/class_transport/CMakeLists.txt
index 9da1020ce..3247d0745 100644
--- a/code/nel/samples/net/class_transport/CMakeLists.txt
+++ b/code/nel/samples/net/class_transport/CMakeLists.txt
@@ -2,7 +2,7 @@ ADD_EXECUTABLE(nl_sample_ct_ai_service WIN32 ai_service.cpp)
ADD_EXECUTABLE(nl_sample_ct_gd_service WIN32 gd_service.cpp)
-ADD_DEFINITIONS(-DNL_CT_CFG="\\"${NL_SHARE_PREFIX}/nl_sample_class_transport/\\"")
+ADD_DEFINITIONS(-DNL_CT_CFG="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_class_transport/\\"")
TARGET_LINK_LIBRARIES(nl_sample_ct_ai_service nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_ct_ai_service "NeL, Samples, Net, Class Transport: AI Service")
@@ -13,4 +13,4 @@ NL_DEFAULT_PROPS(nl_sample_ct_gd_service "NeL, Samples, Net, Class Transport: GD
NL_ADD_RUNTIME_FLAGS(nl_sample_ct_gd_service)
INSTALL(TARGETS nl_sample_ct_ai_service nl_sample_ct_gd_service RUNTIME DESTINATION bin COMPONENT samplesnet)
-INSTALL(FILES ai_service.cfg gd_service.cfg DESTINATION share/nel/nl_sample_class_transport COMPONENT samplesnet)
+INSTALL(FILES ai_service.cfg gd_service.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_class_transport COMPONENT samplesnet)
diff --git a/code/nel/samples/net/login_system/CMakeLists.txt b/code/nel/samples/net/login_system/CMakeLists.txt
index 6ee987e0d..4d83420da 100644
--- a/code/nel/samples/net/login_system/CMakeLists.txt
+++ b/code/nel/samples/net/login_system/CMakeLists.txt
@@ -2,7 +2,7 @@ ADD_EXECUTABLE(nl_sample_ls_client client.cpp)
ADD_EXECUTABLE(nl_sample_ls_fes WIN32 frontend_service.cpp)
-ADD_DEFINITIONS(-DNL_LS_CFG="\\"${NL_SHARE_PREFIX}/nl_sample_login_system/\\"")
+ADD_DEFINITIONS(-DNL_LS_CFG="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_login_system/\\"")
TARGET_LINK_LIBRARIES(nl_sample_ls_client nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_ls_client "NeL, Samples, Net, Login Service: LS Client")
@@ -13,4 +13,4 @@ NL_DEFAULT_PROPS(nl_sample_ls_fes "NeL, Samples, Net, Login Service: LS Frontend
NL_ADD_RUNTIME_FLAGS(nl_sample_ls_fes)
INSTALL(TARGETS nl_sample_ls_client nl_sample_ls_fes RUNTIME DESTINATION bin COMPONENT samplesnet)
-INSTALL(FILES frontend_service.cfg client.cfg DESTINATION share/nel/nl_sample_login_system COMPONENT samplesnet)
+INSTALL(FILES frontend_service.cfg client.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_login_system COMPONENT samplesnet)
diff --git a/code/nel/samples/net/udp/CMakeLists.txt b/code/nel/samples/net/udp/CMakeLists.txt
index 9daaa9bc0..f47da915c 100644
--- a/code/nel/samples/net/udp/CMakeLists.txt
+++ b/code/nel/samples/net/udp/CMakeLists.txt
@@ -4,7 +4,7 @@ ADD_EXECUTABLE(nl_sample_udpclient client.cpp graph.cpp graph.h simlag.cpp simla
ADD_EXECUTABLE(nl_sample_udpserver WIN32 bench_service.cpp receive_task.cpp receive_task.h)
-ADD_DEFINITIONS(-DUDP_DIR="\\"${NL_SHARE_PREFIX}/nl_sample_udp/\\"")
+ADD_DEFINITIONS(-DUDP_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_udp/\\"")
IF(WITH_3D)
ADD_DEFINITIONS(-DUSE_3D)
@@ -18,8 +18,8 @@ NL_ADD_RUNTIME_FLAGS(nl_sample_udpclient)
NL_ADD_RUNTIME_FLAGS(nl_sample_udpserver)
INSTALL(TARGETS nl_sample_udpclient nl_sample_udpserver RUNTIME DESTINATION bin COMPONENT samplesnet)
-INSTALL(FILES bench_service.cfg client.cfg readme.txt DESTINATION share/nel/nl_sample_udp COMPONENT samplesnet)
+INSTALL(FILES bench_service.cfg client.cfg readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_udp COMPONENT samplesnet)
IF(WITH_3D)
- INSTALL(FILES n019003l.pfb DESTINATION share/nel/nl_sample_udp COMPONENT samplesnet)
+ INSTALL(FILES n019003l.pfb DESTINATION ${NL_SHARE_PREFIX}/nl_sample_udp COMPONENT samplesnet)
ENDIF(WITH_3D)
diff --git a/code/nel/samples/pacs/CMakeLists.txt b/code/nel/samples/pacs/CMakeLists.txt
index 96423f7ca..28b726234 100644
--- a/code/nel/samples/pacs/CMakeLists.txt
+++ b/code/nel/samples/pacs/CMakeLists.txt
@@ -2,16 +2,16 @@ FILE(GLOB SRC *.cpp *.h)
ADD_EXECUTABLE(nl_sample_pacs WIN32 ${SRC})
-ADD_DEFINITIONS(-DNL_PACS_DATA="\\"${NL_SHARE_PREFIX}/nl_sample_pacs/\\"")
+ADD_DEFINITIONS(-DNL_PACS_DATA="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_pacs/\\"")
TARGET_LINK_LIBRARIES(nl_sample_pacs nelmisc nelpacs nel3d)
NL_DEFAULT_PROPS(nl_sample_pacs "NeL, Samples: PACS")
NL_ADD_RUNTIME_FLAGS(nl_sample_pacs)
INSTALL(TARGETS nl_sample_pacs RUNTIME DESTINATION bin COMPONENT samplespacs)
-INSTALL(FILES readme.txt DESTINATION share/nel/nl_sample_pacs COMPONENT samplespacs)
+INSTALL(FILES readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_pacs COMPONENT samplespacs)
INSTALL(DIRECTORY shapes/
- DESTINATION share/nel/nl_sample_pacs/shapes
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_pacs/shapes
COMPONENT samplespacs
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/samples/sound/sound_sources/CMakeLists.txt b/code/nel/samples/sound/sound_sources/CMakeLists.txt
index 0c680b740..6a3ea9028 100644
--- a/code/nel/samples/sound/sound_sources/CMakeLists.txt
+++ b/code/nel/samples/sound/sound_sources/CMakeLists.txt
@@ -2,7 +2,7 @@ FILE(GLOB SRC *.cpp *.h)
ADD_EXECUTABLE(nl_sample_sound_sources ${SRC})
-ADD_DEFINITIONS(-DNL_SOUND_DATA="\\"${NL_SHARE_PREFIX}/nl_sample_sound/\\"" ${LIBXML2_DEFINITIONS})
+ADD_DEFINITIONS(-DNL_SOUND_DATA="\\"${NL_SHARE_ABSOLUTE_PREFIX}/nl_sample_sound/\\"" ${LIBXML2_DEFINITIONS})
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
@@ -12,7 +12,7 @@ NL_ADD_RUNTIME_FLAGS(nl_sample_sound_sources)
INSTALL(TARGETS nl_sample_sound_sources RUNTIME DESTINATION bin COMPONENT samplessound)
INSTALL(DIRECTORY data/
- DESTINATION share/nel/nl_sample_sound/data
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_sound/data
COMPONENT samplespacs
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/src/3d/CMakeLists.txt b/code/nel/src/3d/CMakeLists.txt
index 787cc189d..6f632e261 100644
--- a/code/nel/src/3d/CMakeLists.txt
+++ b/code/nel/src/3d/CMakeLists.txt
@@ -708,7 +708,7 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-3d.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nel3d LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nel3d LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
ADD_SUBDIRECTORY(driver)
diff --git a/code/nel/src/3d/driver/direct3d/CMakeLists.txt b/code/nel/src/3d/driver/direct3d/CMakeLists.txt
index fd26c438a..52a4ecd06 100644
--- a/code/nel/src/3d/driver/direct3d/CMakeLists.txt
+++ b/code/nel/src/3d/driver/direct3d/CMakeLists.txt
@@ -17,7 +17,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_direct3d_win LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS nel_drv_direct3d_win LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_direct3d_win RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/3d/driver/opengl/CMakeLists.txt b/code/nel/src/3d/driver/opengl/CMakeLists.txt
index d68bef5f2..232d38706 100644
--- a/code/nel/src/3d/driver/opengl/CMakeLists.txt
+++ b/code/nel/src/3d/driver/opengl/CMakeLists.txt
@@ -74,7 +74,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS ${NLDRV_OGL_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS ${NLDRV_OGL_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS ${NLDRV_OGL_LIB} RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/3d/driver/opengles/CMakeLists.txt b/code/nel/src/3d/driver/opengles/CMakeLists.txt
index bd330c6ec..415da1791 100644
--- a/code/nel/src/3d/driver/opengles/CMakeLists.txt
+++ b/code/nel/src/3d/driver/opengles/CMakeLists.txt
@@ -77,7 +77,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS ${NLDRV_OGLES_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS ${NLDRV_OGLES_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS ${NLDRV_OGLES_LIB} RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/cegui/CMakeLists.txt b/code/nel/src/cegui/CMakeLists.txt
index 48c06eb4b..928ebc4cb 100644
--- a/code/nel/src/cegui/CMakeLists.txt
+++ b/code/nel/src/cegui/CMakeLists.txt
@@ -12,5 +12,5 @@ NL_ADD_LIB_SUFFIX(nelceguirenderer)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DNEL_CEGUIRENDERER_EXPORTS)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelceguirenderer RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelceguirenderer RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/georges/CMakeLists.txt b/code/nel/src/georges/CMakeLists.txt
index 640f33204..1d56a31bf 100644
--- a/code/nel/src/georges/CMakeLists.txt
+++ b/code/nel/src/georges/CMakeLists.txt
@@ -23,5 +23,5 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-georges.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelgeorges LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelgeorges LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/ligo/CMakeLists.txt b/code/nel/src/ligo/CMakeLists.txt
index 41b0eaaa1..4c1bfbc30 100644
--- a/code/nel/src/ligo/CMakeLists.txt
+++ b/code/nel/src/ligo/CMakeLists.txt
@@ -21,5 +21,5 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-ligo.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelligo LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelligo LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/logic/CMakeLists.txt b/code/nel/src/logic/CMakeLists.txt
index 5ee2b682d..ea0ca605f 100644
--- a/code/nel/src/logic/CMakeLists.txt
+++ b/code/nel/src/logic/CMakeLists.txt
@@ -15,5 +15,5 @@ NL_ADD_LIB_SUFFIX(nellogic)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nellogic LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nellogic LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/misc/CMakeLists.txt b/code/nel/src/misc/CMakeLists.txt
index ff6057b6f..dc5b87e2c 100644
--- a/code/nel/src/misc/CMakeLists.txt
+++ b/code/nel/src/misc/CMakeLists.txt
@@ -55,5 +55,5 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-misc.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelmisc LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelmisc LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/net/CMakeLists.txt b/code/nel/src/net/CMakeLists.txt
index f30232e8d..487516e74 100644
--- a/code/nel/src/net/CMakeLists.txt
+++ b/code/nel/src/net/CMakeLists.txt
@@ -26,5 +26,5 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-net.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelnet LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelnet LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/pacs/CMakeLists.txt b/code/nel/src/pacs/CMakeLists.txt
index 492df88be..1fde3e6df 100644
--- a/code/nel/src/pacs/CMakeLists.txt
+++ b/code/nel/src/pacs/CMakeLists.txt
@@ -21,5 +21,5 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-pacs.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelpacs LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelpacs LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/src/sound/CMakeLists.txt b/code/nel/src/sound/CMakeLists.txt
index 1122551cc..9d2e0dd82 100644
--- a/code/nel/src/sound/CMakeLists.txt
+++ b/code/nel/src/sound/CMakeLists.txt
@@ -114,7 +114,7 @@ ENDIF(WITH_PCH)
NL_GEN_PC(nel-sound.pc)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelsound LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelsound LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
ADD_SUBDIRECTORY(driver)
diff --git a/code/nel/src/sound/driver/CMakeLists.txt b/code/nel/src/sound/driver/CMakeLists.txt
index 68ad208bb..64e73cb1d 100644
--- a/code/nel/src/sound/driver/CMakeLists.txt
+++ b/code/nel/src/sound/driver/CMakeLists.txt
@@ -17,7 +17,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelsnd_lowlevel LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS nelsnd_lowlevel LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
IF(WITH_DRIVER_OPENAL)
diff --git a/code/nel/src/sound/driver/dsound/CMakeLists.txt b/code/nel/src/sound/driver/dsound/CMakeLists.txt
index 284b9eeae..5bde8f1b1 100644
--- a/code/nel/src/sound/driver/dsound/CMakeLists.txt
+++ b/code/nel/src/sound/driver/dsound/CMakeLists.txt
@@ -14,7 +14,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/fmod/CMakeLists.txt b/code/nel/src/sound/driver/fmod/CMakeLists.txt
index 982c24bca..5e8eed000 100644
--- a/code/nel/src/sound/driver/fmod/CMakeLists.txt
+++ b/code/nel/src/sound/driver/fmod/CMakeLists.txt
@@ -14,7 +14,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/openal/CMakeLists.txt b/code/nel/src/sound/driver/openal/CMakeLists.txt
index 5e3fcb90b..adf2b584f 100644
--- a/code/nel/src/sound/driver/openal/CMakeLists.txt
+++ b/code/nel/src/sound/driver/openal/CMakeLists.txt
@@ -45,7 +45,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS ${NLDRV_AL_LIB} RUNTIME DESTINATION ${NL_DRIVER_PREFIX} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib COMPONENT driverssound)
+ INSTALL(TARGETS ${NLDRV_AL_LIB} RUNTIME DESTINATION ${NL_DRIVER_PREFIX} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS ${NLDRV_AL_LIB} RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/xaudio2/CMakeLists.txt b/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
index c0d49bd5e..13a6be8d8 100644
--- a/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
+++ b/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
@@ -41,7 +41,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION lib COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/tools/3d/ligo/plugin_max/CMakeLists.txt b/code/nel/tools/3d/ligo/plugin_max/CMakeLists.txt
index af00c788a..ddf009188 100644
--- a/code/nel/tools/3d/ligo/plugin_max/CMakeLists.txt
+++ b/code/nel/tools/3d/ligo/plugin_max/CMakeLists.txt
@@ -22,7 +22,7 @@ NL_ADD_LIB_SUFFIX(ligoscape_utility)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ligoscape_utility RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ligoscape_utility RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
INSTALL(FILES ligoscript.txt DESTINATION maxplugin/docs)
INSTALL(DIRECTORY scripts/
DESTINATION maxplugin/scripts/
diff --git a/code/nel/tools/3d/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer/CMakeLists.txt
index e22e4dc51..15d24ba7a 100644
--- a/code/nel/tools/3d/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer/CMakeLists.txt
@@ -21,7 +21,7 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(object_viewer_dll ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.h ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS object_viewer_dll LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS object_viewer_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
INSTALL(FILES object_viewer.cfg DESTINATION bin COMPONENT tools3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS object_viewer_dll RUNTIME DESTINATION maxplugin COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index 9e54a1857..4dd05de9d 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -6,7 +6,7 @@
#-----------------------------------------------------------------------------
# This tells the application(s) where to fidn the installed data.
-ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_PREFIX}/object_viewer_qt/\\"")
+ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt/\\"")
IF(UNIX AND WITH_STATIC)
MESSAGE(FATAL_ERROR "OVQT does not work with static NeL builds on Unix atm.")
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
index 08adfb89c..746cc48b6 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
@@ -44,4 +44,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_bnp_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
index 77f3562e6..dcd9bd81c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
@@ -55,4 +55,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_core)
ADD_DEFINITIONS(-DCORE_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
index 790af3ef6..0876d192c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
@@ -40,4 +40,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_disp_sheet_id)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
\ No newline at end of file
+INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
index f34309a74..9e6b308a6 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
@@ -38,4 +38,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_example)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
index 3661decef..2e8610dfa 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
@@ -44,4 +44,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_georges_editor)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
index c7450586e..ebff67fa5 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
@@ -45,4 +45,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_landscape_editor)
ADD_DEFINITIONS(-DLANDSCAPE_EDITOR_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
index 31569ae6b..a65fe1b9f 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
@@ -36,4 +36,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_log)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
index ac262ad56..61a55a94d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
@@ -46,4 +46,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_mission_compiler)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
index 7f084fbb1..e0a4697c7 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
@@ -1,166 +1,166 @@
-INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${LIBXML2_INCLUDE_DIR}
- ${QT_INCLUDES})
-
-FILE(GLOB SRC *.cpp *.h)
-
-SET(OVQT_EXT_SYS_SRC ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin.h
- ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_manager.h
- ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_spec.h)
-
-SET(OBJECT_VIEWER_PLUGIN_HDR object_viewer_plugin.h
- main_window.h
- graphics_viewport.h
- animation_dialog.h
- animation_set_dialog.h
- setup_fog_dialog.h
- slot_manager_dialog.h
- particle_control_dialog.h
- particle_workspace_dialog.h
- particle_tree_model.h
- particle_system_page.h
- particle_workspace_page.h
- edit_range_widget.h
- emitter_page.h
- attrib_widget.h
- located_bindable_page.h
- located_page.h
- particle_force_page.h
- particle_light_page.h
- particle_zone_page.h
- particle_sound_page.h
- basic_edit_widget.h
- direction_widget.h
- color_edit_widget.h
- particle_property_dialog.h
- ps_mover_page.h
- value_blender_dialog.h
- value_gradient_dialog.h
- value_from_emitter_dialog.h
- curve_dialog.h
- bin_op_dialog.h
- hoverpoints.h
- mesh_widget.h
- morph_mesh_dialog.h
- constraint_mesh_widget.h
- tail_particle_widget.h
- auto_lod_dialog.h
- particle_texture_widget.h
- particle_texture_anim_widget.h
- multi_tex_dialog.h
- spinner_dialog.h
- follow_path_dialog.h
- water_pool_dialog.h
- skeleton_scale_dialog.h
- skeleton_tree_model.h
- particle_link_skeleton_dialog.h
- vegetable_dialog.h
- global_wind_dialog.h
- day_night_dialog.h
- sun_color_dialog.h
- vegetable_noise_value_widget.h
- vegetable_density_page.h
- vegetable_landscape_page.h
- vegetable_scale_page.h
- vegetable_appearance_page.h
- vegetable_rotate_page.h
- tune_mrm_dialog.h
- tune_timer_dialog.h
- camera_control.h
- graphics_settings_page.h
- sound_settings_page.h
- vegetable_settings_page.h
- scheme_bank_dialog.h)
-
-SET(OBJECT_VIEWER_PLUGIN_UIS animation_form.ui
- animation_set_form.ui
- setup_fog_form.ui
- slot_form.ui
- particle_control_form.ui
- particle_workspace_form.ui
- edit_range_float_form.ui
- edit_range_uint_form.ui
- particle_system_form.ui
- workspace_form.ui
- attrib_form.ui
- emitter_form.ui
- located_bindable_form.ui
- located_form.ui
- particle_force_form.ui
- particle_light_form.ui
- particle_zone_form.ui
- particle_sound_form.ui
- basic_edit_form.ui
- direction_form.ui
- color_edit_form.ui
- ps_mover_form.ui
- curve_form.ui
- mesh_form.ui
- morph_mesh_form.ui
- constraint_mesh_form.ui
- tail_form.ui
- auto_lod_form.ui
- particle_texture_form.ui
- particle_texture_anim_form.ui
- multi_tex_form.ui
- skeleton_scale_form.ui
- particle_link_skeleton_form.ui
- water_pool_form.ui
- vegetable_dialog_form.ui
- vegetable_noise_value_form.ui
- global_wind_form.ui
- sun_color_form.ui
- day_night_form.ui
- vegetable_density_form.ui
- vegetable_apperance_form.ui
- vegetable_landscape_form.ui
- vegetable_rotate_form.ui
- vegetable_scale_form.ui
- tune_mrm_form.ui
- tune_timer_form.ui
- graphics_settings_page.ui
- sound_settings_page.ui
- vegetable_settings_page.ui
- scheme_bank_form.ui
- value_gradient_form.ui)
-
-SET(OBJECT_VIEWER_PLUGIN_RCS object_viewer.qrc)
-
-SET(QT_USE_QTGUI TRUE)
-SET(QT_USE_QTOPENGL TRUE)
-
-QT4_ADD_RESOURCES(OBJECT_VIEWER_PLUGIN_RC_SRCS ${OBJECT_VIEWER_PLUGIN_RCS})
-QT4_WRAP_CPP(OBJECT_VIEWER_PLUGIN_MOC_SRC ${OBJECT_VIEWER_PLUGIN_HDR})
-QT4_WRAP_UI(OBJECT_VIEWER_PLUGIN_UI_HDRS ${OBJECT_VIEWER_PLUGIN_UIS})
-
-SOURCE_GROUP(QtResources FILES ${OBJECT_VIEWER_PLUGIN_UIS})
-SOURCE_GROUP(QtGeneratedUiHdr FILES ${OBJECT_VIEWER_PLUGIN_UI_HDRS})
-SOURCE_GROUP(QtGeneratedMocSrc FILES ${OBJECT_VIEWER_PLUGIN_MOC_SRC})
-SOURCE_GROUP("Object Viewer Plugin" FILES ${SRC})
-SOURCE_GROUP("OVQT Extension System" FILES ${OVQT_EXT_SYS_SRC})
-
-ADD_LIBRARY(ovqt_plugin_object_viewer MODULE ${SRC} ${OBJECT_VIEWER_PLUGIN_MOC_SRC} ${OVQT_EXT_SYS_SRC} ${OBJECT_VIEWER_PLUGIN_UI_HDRS} ${OBJECT_VIEWER_PLUGIN_RC_SRCS})
-
-TARGET_LINK_LIBRARIES(ovqt_plugin_object_viewer
- ovqt_plugin_core
- nelmisc
- nel3d
- nelsound
- nelligo
- nelgeorges
- ${QT_LIBRARIES}
- ${QT_QTOPENGL_LIBRARY})
-
-NL_DEFAULT_PROPS(ovqt_plugin_object_viewer "NeL, Tools, 3D: Object Viewer Qt Plugin: Object Viewer")
-
+INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${LIBXML2_INCLUDE_DIR}
+ ${QT_INCLUDES})
+
+FILE(GLOB SRC *.cpp *.h)
+
+SET(OVQT_EXT_SYS_SRC ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_manager.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_spec.h)
+
+SET(OBJECT_VIEWER_PLUGIN_HDR object_viewer_plugin.h
+ main_window.h
+ graphics_viewport.h
+ animation_dialog.h
+ animation_set_dialog.h
+ setup_fog_dialog.h
+ slot_manager_dialog.h
+ particle_control_dialog.h
+ particle_workspace_dialog.h
+ particle_tree_model.h
+ particle_system_page.h
+ particle_workspace_page.h
+ edit_range_widget.h
+ emitter_page.h
+ attrib_widget.h
+ located_bindable_page.h
+ located_page.h
+ particle_force_page.h
+ particle_light_page.h
+ particle_zone_page.h
+ particle_sound_page.h
+ basic_edit_widget.h
+ direction_widget.h
+ color_edit_widget.h
+ particle_property_dialog.h
+ ps_mover_page.h
+ value_blender_dialog.h
+ value_gradient_dialog.h
+ value_from_emitter_dialog.h
+ curve_dialog.h
+ bin_op_dialog.h
+ hoverpoints.h
+ mesh_widget.h
+ morph_mesh_dialog.h
+ constraint_mesh_widget.h
+ tail_particle_widget.h
+ auto_lod_dialog.h
+ particle_texture_widget.h
+ particle_texture_anim_widget.h
+ multi_tex_dialog.h
+ spinner_dialog.h
+ follow_path_dialog.h
+ water_pool_dialog.h
+ skeleton_scale_dialog.h
+ skeleton_tree_model.h
+ particle_link_skeleton_dialog.h
+ vegetable_dialog.h
+ global_wind_dialog.h
+ day_night_dialog.h
+ sun_color_dialog.h
+ vegetable_noise_value_widget.h
+ vegetable_density_page.h
+ vegetable_landscape_page.h
+ vegetable_scale_page.h
+ vegetable_appearance_page.h
+ vegetable_rotate_page.h
+ tune_mrm_dialog.h
+ tune_timer_dialog.h
+ camera_control.h
+ graphics_settings_page.h
+ sound_settings_page.h
+ vegetable_settings_page.h
+ scheme_bank_dialog.h)
+
+SET(OBJECT_VIEWER_PLUGIN_UIS animation_form.ui
+ animation_set_form.ui
+ setup_fog_form.ui
+ slot_form.ui
+ particle_control_form.ui
+ particle_workspace_form.ui
+ edit_range_float_form.ui
+ edit_range_uint_form.ui
+ particle_system_form.ui
+ workspace_form.ui
+ attrib_form.ui
+ emitter_form.ui
+ located_bindable_form.ui
+ located_form.ui
+ particle_force_form.ui
+ particle_light_form.ui
+ particle_zone_form.ui
+ particle_sound_form.ui
+ basic_edit_form.ui
+ direction_form.ui
+ color_edit_form.ui
+ ps_mover_form.ui
+ curve_form.ui
+ mesh_form.ui
+ morph_mesh_form.ui
+ constraint_mesh_form.ui
+ tail_form.ui
+ auto_lod_form.ui
+ particle_texture_form.ui
+ particle_texture_anim_form.ui
+ multi_tex_form.ui
+ skeleton_scale_form.ui
+ particle_link_skeleton_form.ui
+ water_pool_form.ui
+ vegetable_dialog_form.ui
+ vegetable_noise_value_form.ui
+ global_wind_form.ui
+ sun_color_form.ui
+ day_night_form.ui
+ vegetable_density_form.ui
+ vegetable_apperance_form.ui
+ vegetable_landscape_form.ui
+ vegetable_rotate_form.ui
+ vegetable_scale_form.ui
+ tune_mrm_form.ui
+ tune_timer_form.ui
+ graphics_settings_page.ui
+ sound_settings_page.ui
+ vegetable_settings_page.ui
+ scheme_bank_form.ui
+ value_gradient_form.ui)
+
+SET(OBJECT_VIEWER_PLUGIN_RCS object_viewer.qrc)
+
+SET(QT_USE_QTGUI TRUE)
+SET(QT_USE_QTOPENGL TRUE)
+
+QT4_ADD_RESOURCES(OBJECT_VIEWER_PLUGIN_RC_SRCS ${OBJECT_VIEWER_PLUGIN_RCS})
+QT4_WRAP_CPP(OBJECT_VIEWER_PLUGIN_MOC_SRC ${OBJECT_VIEWER_PLUGIN_HDR})
+QT4_WRAP_UI(OBJECT_VIEWER_PLUGIN_UI_HDRS ${OBJECT_VIEWER_PLUGIN_UIS})
+
+SOURCE_GROUP(QtResources FILES ${OBJECT_VIEWER_PLUGIN_UIS})
+SOURCE_GROUP(QtGeneratedUiHdr FILES ${OBJECT_VIEWER_PLUGIN_UI_HDRS})
+SOURCE_GROUP(QtGeneratedMocSrc FILES ${OBJECT_VIEWER_PLUGIN_MOC_SRC})
+SOURCE_GROUP("Object Viewer Plugin" FILES ${SRC})
+SOURCE_GROUP("OVQT Extension System" FILES ${OVQT_EXT_SYS_SRC})
+
+ADD_LIBRARY(ovqt_plugin_object_viewer MODULE ${SRC} ${OBJECT_VIEWER_PLUGIN_MOC_SRC} ${OVQT_EXT_SYS_SRC} ${OBJECT_VIEWER_PLUGIN_UI_HDRS} ${OBJECT_VIEWER_PLUGIN_RC_SRCS})
+
+TARGET_LINK_LIBRARIES(ovqt_plugin_object_viewer
+ ovqt_plugin_core
+ nelmisc
+ nel3d
+ nelsound
+ nelligo
+ nelgeorges
+ ${QT_LIBRARIES}
+ ${QT_QTOPENGL_LIBRARY})
+
+NL_DEFAULT_PROPS(ovqt_plugin_object_viewer "NeL, Tools, 3D: Object Viewer Qt Plugin: Object Viewer")
+
IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(ovqt_plugin_object_viewer ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
-ENDIF(WITH_PCH)
-
-NL_ADD_RUNTIME_FLAGS(ovqt_plugin_object_viewer)
-NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
-
-ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-
-INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+ENDIF(WITH_PCH)
+
+NL_ADD_RUNTIME_FLAGS(ovqt_plugin_object_viewer)
+NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
+
+ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
+
+INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
index 2d4ddaa9d..bdb3e68e6 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
@@ -29,4 +29,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_sheet_builder)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
index 505340487..befb70845 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
@@ -48,4 +48,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_translation_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
index 2ddbe868e..a40a0eb94 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
@@ -42,4 +42,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_zone_painter)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_widget/CMakeLists.txt b/code/nel/tools/3d/object_viewer_widget/CMakeLists.txt
index 4967e8206..20e5b69e8 100644
--- a/code/nel/tools/3d/object_viewer_widget/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_widget/CMakeLists.txt
@@ -6,7 +6,7 @@
#-----------------------------------------------------------------------------
# This tells the application(s) where to find the installed data.
-#ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_PREFIX}/georges_editor_qt/\\"")
+#ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/georges_editor_qt/\\"")
ADD_SUBDIRECTORY(src)
diff --git a/code/nel/tools/3d/plugin_max/nel_3dsmax_shared/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_3dsmax_shared/CMakeLists.txt
index 7233f2f76..3a596badc 100644
--- a/code/nel/tools/3d/plugin_max/nel_3dsmax_shared/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_3dsmax_shared/CMakeLists.txt
@@ -22,4 +22,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(nel_3dsmax_shared ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS nel_3dsmax_shared RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_3dsmax_shared RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_export/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_export/CMakeLists.txt
index 32bac9067..93ae28370 100644
--- a/code/nel/tools/3d/plugin_max/nel_export/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_export/CMakeLists.txt
@@ -31,4 +31,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(nel_export ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.h ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS nel_export RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_export RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_mesh_lib/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_mesh_lib/CMakeLists.txt
index 555edd263..a6161338d 100644
--- a/code/nel/tools/3d/plugin_max/nel_mesh_lib/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_mesh_lib/CMakeLists.txt
@@ -12,4 +12,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(nel_mesh_lib ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS nel_mesh_lib RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_mesh_lib RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_patch_converter/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_patch_converter/CMakeLists.txt
index d414375ba..c173232b3 100644
--- a/code/nel/tools/3d/plugin_max/nel_patch_converter/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_patch_converter/CMakeLists.txt
@@ -18,4 +18,4 @@ NL_DEFAULT_PROPS(nel_patch_converter "MAX Plugin: NeL Patch Converter")
NL_ADD_RUNTIME_FLAGS(nel_patch_converter)
NL_ADD_LIB_SUFFIX(nel_patch_converter)
-INSTALL(TARGETS nel_patch_converter RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_patch_converter RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_patch_edit/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_patch_edit/CMakeLists.txt
index ff2c11245..82cc06611 100644
--- a/code/nel/tools/3d/plugin_max/nel_patch_edit/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_patch_edit/CMakeLists.txt
@@ -22,4 +22,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(nel_patch_edit ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.h ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS nel_patch_edit RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_patch_edit RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_patch_edit_adv/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_patch_edit_adv/CMakeLists.txt
index c63db300f..08b8f49ab 100644
--- a/code/nel/tools/3d/plugin_max/nel_patch_edit_adv/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_patch_edit_adv/CMakeLists.txt
@@ -18,4 +18,4 @@ NL_DEFAULT_PROPS(nel_patch_edit_adv "MAX Plugin: NeL Patch Edit (Adv)")
NL_ADD_RUNTIME_FLAGS(nel_patch_edit_adv)
NL_ADD_LIB_SUFFIX(nel_patch_edit_adv)
-INSTALL(TARGETS nel_patch_edit_adv RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_patch_edit_adv RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_patch_lib/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_patch_lib/CMakeLists.txt
index faaac3f5d..63f0a5bcc 100644
--- a/code/nel/tools/3d/plugin_max/nel_patch_lib/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_patch_lib/CMakeLists.txt
@@ -8,4 +8,4 @@ NL_DEFAULT_PROPS(nel_patch_lib "MAX Plugin: NeL Patch Library")
NL_ADD_RUNTIME_FLAGS(nel_patch_lib)
NL_ADD_LIB_SUFFIX(nel_patch_lib)
-INSTALL(TARGETS nel_patch_lib RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_patch_lib RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/nel_patch_paint/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_patch_paint/CMakeLists.txt
index 54f2c1724..628cb3120 100644
--- a/code/nel/tools/3d/plugin_max/nel_patch_paint/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_patch_paint/CMakeLists.txt
@@ -24,5 +24,5 @@ NL_ADD_LIB_SUFFIX(nel_patch_paint)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS nel_patch_paint RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_patch_paint RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
INSTALL(FILES keys.cfg DESTINATION maxplugin/plugins )
\ No newline at end of file
diff --git a/code/nel/tools/3d/plugin_max/nel_vertex_tree_paint/CMakeLists.txt b/code/nel/tools/3d/plugin_max/nel_vertex_tree_paint/CMakeLists.txt
index 2f910ac9a..9c4f6deb2 100644
--- a/code/nel/tools/3d/plugin_max/nel_vertex_tree_paint/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/nel_vertex_tree_paint/CMakeLists.txt
@@ -19,4 +19,4 @@ NL_DEFAULT_PROPS(nel_vertex_tree_paint "MAX Plugin: NeL Vertex Tree Painter")
NL_ADD_RUNTIME_FLAGS(nel_vertex_tree_paint)
NL_ADD_LIB_SUFFIX(nel_vertex_tree_paint)
-INSTALL(TARGETS nel_vertex_tree_paint RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS nel_vertex_tree_paint RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/plugin_max/tile_utility/CMakeLists.txt b/code/nel/tools/3d/plugin_max/tile_utility/CMakeLists.txt
index 772efe8b9..7f0122cda 100644
--- a/code/nel/tools/3d/plugin_max/tile_utility/CMakeLists.txt
+++ b/code/nel/tools/3d/plugin_max/tile_utility/CMakeLists.txt
@@ -18,4 +18,4 @@ NL_DEFAULT_PROPS(tile_utility "MAX Plugin: Tile Utility")
NL_ADD_RUNTIME_FLAGS(tile_utility)
NL_ADD_LIB_SUFFIX(tile_utility)
-INSTALL(TARGETS tile_utility RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS tile_utility RUNTIME DESTINATION maxplugin/plugins LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/nel/tools/3d/zviewer/CMakeLists.txt b/code/nel/tools/3d/zviewer/CMakeLists.txt
index 04d72ff27..f695534be 100644
--- a/code/nel/tools/3d/zviewer/CMakeLists.txt
+++ b/code/nel/tools/3d/zviewer/CMakeLists.txt
@@ -13,5 +13,5 @@ NL_DEFAULT_PROPS(zviewer "NeL, Tools, 3D: Zone Viewer")
NL_ADD_RUNTIME_FLAGS(zviewer)
INSTALL(TARGETS zviewer RUNTIME DESTINATION bin COMPONENT tools3d)
-INSTALL(FILES zviewer.cfg DESTINATION etc/nel COMPONENT tools3d)
-INSTALL(FILES readme.txt DESTINATION share/nel/zviewer COMPONENT tools3d)
+INSTALL(FILES zviewer.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT tools3d)
+INSTALL(FILES readme.txt DESTINATION ${NL_SHARE_PREFIX}/zviewer COMPONENT tools3d)
diff --git a/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt b/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
index c2e0661d1..f65ff800f 100644
--- a/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
+++ b/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
@@ -15,4 +15,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(logic_editor_dll ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS logic_editor_dll LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT toolsmisc)
+INSTALL(TARGETS logic_editor_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/make_sheet_id/CMakeLists.txt b/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
index 2b5da139e..22730ce5c 100644
--- a/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
@@ -9,4 +9,4 @@ NL_DEFAULT_PROPS(make_sheet_id "NeL, Tools, Misc: make_sheet_id")
NL_ADD_RUNTIME_FLAGS(make_sheet_id)
INSTALL(TARGETS make_sheet_id RUNTIME DESTINATION bin COMPONENT toolsmisc)
-INSTALL(FILES make_sheet_id.cfg DESTINATION etc/nel COMPONENT toolsmisc)
+INSTALL(FILES make_sheet_id.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/words_dic_qt/CMakeLists.txt b/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
index dcfb2a9f6..c112d6885 100644
--- a/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
+++ b/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
@@ -28,5 +28,5 @@ NL_ADD_RUNTIME_FLAGS(words_dic_qt)
ADD_DEFINITIONS(${QT_DEFINITIONS})
INSTALL(TARGETS words_dic_qt RUNTIME DESTINATION bin COMPONENT toolsmisc)
-INSTALL(FILES words_dic.cfg DESTINATION etc/nel COMPONENT toolsmisc)
+INSTALL(FILES words_dic.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt b/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
index 6700863af..c3d22d8a5 100644
--- a/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
@@ -9,4 +9,4 @@ NL_DEFAULT_PROPS(build_ig_boxes "NeL, Tools, PACS: build_ig_boxes")
NL_ADD_RUNTIME_FLAGS(build_ig_boxes)
INSTALL(TARGETS build_ig_boxes RUNTIME DESTINATION bin COMPONENT toolspacs)
-INSTALL(FILES build_ig_boxes.cfg DESTINATION etc/nel COMPONENT toolspacs)
+INSTALL(FILES build_ig_boxes.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt b/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
index ff23551c0..8e5f73b2d 100644
--- a/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
@@ -9,4 +9,4 @@ NL_DEFAULT_PROPS(build_indoor_rbank "NeL, Tools, PACS: build_indoor_rbank")
NL_ADD_RUNTIME_FLAGS(build_indoor_rbank)
INSTALL(TARGETS build_indoor_rbank RUNTIME DESTINATION bin COMPONENT toolspacs)
-INSTALL(FILES build_indoor_rbank.cfg DESTINATION etc/nel COMPONENT toolspacs)
+INSTALL(FILES build_indoor_rbank.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nel/tools/pacs/build_rbank/CMakeLists.txt b/code/nel/tools/pacs/build_rbank/CMakeLists.txt
index f16cfb407..9c908bce1 100644
--- a/code/nel/tools/pacs/build_rbank/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_rbank/CMakeLists.txt
@@ -13,4 +13,4 @@ NL_ADD_RUNTIME_FLAGS(build_rbank)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS build_rbank RUNTIME DESTINATION bin COMPONENT toolspacs)
-INSTALL(FILES build_rbank.cfg DESTINATION etc/nel COMPONENT toolspacs)
+INSTALL(FILES build_rbank.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nelns/admin_executor_service/CMakeLists.txt b/code/nelns/admin_executor_service/CMakeLists.txt
index 25749af66..620c1a78a 100644
--- a/code/nelns/admin_executor_service/CMakeLists.txt
+++ b/code/nelns/admin_executor_service/CMakeLists.txt
@@ -14,4 +14,4 @@ NL_ADD_RUNTIME_FLAGS(admin_executor_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS admin_executor_service RUNTIME DESTINATION sbin COMPONENT aes)
-INSTALL(FILES admin_executor_service.cfg common.cfg DESTINATION etc/nel/nelns COMPONENT aes)
+INSTALL(FILES admin_executor_service.cfg common.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT aes)
diff --git a/code/nelns/admin_service/CMakeLists.txt b/code/nelns/admin_service/CMakeLists.txt
index 88d5aaeb9..a7eee50a1 100644
--- a/code/nelns/admin_service/CMakeLists.txt
+++ b/code/nelns/admin_service/CMakeLists.txt
@@ -17,4 +17,4 @@ NL_ADD_RUNTIME_FLAGS(admin_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS admin_service RUNTIME DESTINATION sbin COMPONENT as)
-INSTALL(FILES admin_service.cfg common.cfg DESTINATION etc/nel/nelns COMPONENT as)
+INSTALL(FILES admin_service.cfg common.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT as)
diff --git a/code/nelns/login_service/CMakeLists.txt b/code/nelns/login_service/CMakeLists.txt
index 5ae88df7c..1ee7260fe 100644
--- a/code/nelns/login_service/CMakeLists.txt
+++ b/code/nelns/login_service/CMakeLists.txt
@@ -17,4 +17,4 @@ NL_ADD_RUNTIME_FLAGS(login_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS login_service RUNTIME DESTINATION sbin COMPONENT ls)
-INSTALL(FILES login_service.cfg common.cfg DESTINATION etc/nel/nelns COMPONENT ls)
+INSTALL(FILES login_service.cfg common.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT ls)
diff --git a/code/nelns/login_system/nel_launcher_qt/CMakeLists.txt b/code/nelns/login_system/nel_launcher_qt/CMakeLists.txt
index 3bd503eef..7e128f1b7 100644
--- a/code/nelns/login_system/nel_launcher_qt/CMakeLists.txt
+++ b/code/nelns/login_system/nel_launcher_qt/CMakeLists.txt
@@ -37,5 +37,5 @@ INSTALL(TARGETS nel_launcher_qt RUNTIME DESTINATION bin COMPONENT launcher)
IF(WIN32)
INSTALL(FILES nel_launcher.cfg DESTINATION bin COMPONENT launcher)
ELSE(WIN32)
- INSTALL(FILES nel_launcher.cfg DESTINATION etc/nel/nelns COMPONENT launcher)
+ INSTALL(FILES nel_launcher.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT launcher)
ENDIF(WIN32)
diff --git a/code/nelns/naming_service/CMakeLists.txt b/code/nelns/naming_service/CMakeLists.txt
index 4073d1193..9616ca957 100644
--- a/code/nelns/naming_service/CMakeLists.txt
+++ b/code/nelns/naming_service/CMakeLists.txt
@@ -15,4 +15,4 @@ NL_ADD_RUNTIME_FLAGS(naming_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS naming_service RUNTIME DESTINATION sbin COMPONENT ns)
-INSTALL(FILES naming_service.cfg common.cfg DESTINATION etc/nel/nelns COMPONENT ns)
+INSTALL(FILES naming_service.cfg common.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT ns)
diff --git a/code/nelns/welcome_service/CMakeLists.txt b/code/nelns/welcome_service/CMakeLists.txt
index e25c08a0c..c6819d97d 100644
--- a/code/nelns/welcome_service/CMakeLists.txt
+++ b/code/nelns/welcome_service/CMakeLists.txt
@@ -15,4 +15,4 @@ NL_ADD_RUNTIME_FLAGS(welcome_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
INSTALL(TARGETS welcome_service RUNTIME DESTINATION sbin COMPONENT ws)
-INSTALL(FILES welcome_service.cfg common.cfg DESTINATION etc/nel/nelns COMPONENT ws)
+INSTALL(FILES welcome_service.cfg common.cfg DESTINATION ${NL_ETC_PREFIX}/nelns COMPONENT ws)
diff --git a/code/ryzom/client/src/client_sheets/CMakeLists.txt b/code/ryzom/client/src/client_sheets/CMakeLists.txt
index 4f21ecf9d..57bf75af5 100644
--- a/code/ryzom/client/src/client_sheets/CMakeLists.txt
+++ b/code/ryzom/client/src/client_sheets/CMakeLists.txt
@@ -14,5 +14,5 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS ryzom_clientsheets LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS ryzom_clientsheets LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/ryzom/client/src/seven_zip/CMakeLists.txt b/code/ryzom/client/src/seven_zip/CMakeLists.txt
index 85212084e..ba4073783 100644
--- a/code/ryzom/client/src/seven_zip/CMakeLists.txt
+++ b/code/ryzom/client/src/seven_zip/CMakeLists.txt
@@ -20,6 +20,6 @@ NL_ADD_LIB_SUFFIX(ryzom_sevenzip)
ADD_DEFINITIONS(-D_SZ_ONE_DIRECTORY)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS ryzom_sevenzip LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS ryzom_sevenzip LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
INSTALL(TARGETS 7zDec RUNTIME DESTINATION bin COMPONENT client)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/ryzom/common/src/game_share/CMakeLists.txt b/code/ryzom/common/src/game_share/CMakeLists.txt
index 61292431c..2648416ec 100644
--- a/code/ryzom/common/src/game_share/CMakeLists.txt
+++ b/code/ryzom/common/src/game_share/CMakeLists.txt
@@ -42,5 +42,5 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS ryzom_gameshare LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+ INSTALL(TARGETS ryzom_gameshare LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/ryzom/server/src/admin_modules/CMakeLists.txt b/code/ryzom/server/src/admin_modules/CMakeLists.txt
index 7eb6af309..ea8d8a5ff 100644
--- a/code/ryzom/server/src/admin_modules/CMakeLists.txt
+++ b/code/ryzom/server/src/admin_modules/CMakeLists.txt
@@ -11,4 +11,4 @@ NL_ADD_LIB_SUFFIX(ryzom_adminmodules)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_adminmodules LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_adminmodules LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/server/src/ai_share/CMakeLists.txt b/code/ryzom/server/src/ai_share/CMakeLists.txt
index 67f659109..700e788e9 100644
--- a/code/ryzom/server/src/ai_share/CMakeLists.txt
+++ b/code/ryzom/server/src/ai_share/CMakeLists.txt
@@ -22,4 +22,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_aishare ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS ryzom_aishare LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_aishare LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/server/src/gameplay_module_lib/CMakeLists.txt b/code/ryzom/server/src/gameplay_module_lib/CMakeLists.txt
index 48b9ed299..727392235 100644
--- a/code/ryzom/server/src/gameplay_module_lib/CMakeLists.txt
+++ b/code/ryzom/server/src/gameplay_module_lib/CMakeLists.txt
@@ -11,4 +11,4 @@ NL_ADD_LIB_SUFFIX(ryzom_gameplaymodule)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_gameplaymodule LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_gameplaymodule LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/server/src/pd_lib/CMakeLists.txt b/code/ryzom/server/src/pd_lib/CMakeLists.txt
index 46974a9ae..f4568064f 100644
--- a/code/ryzom/server/src/pd_lib/CMakeLists.txt
+++ b/code/ryzom/server/src/pd_lib/CMakeLists.txt
@@ -16,4 +16,4 @@ NL_ADD_LIB_SUFFIX(ryzom_pd)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_pd LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_pd LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/server/src/server_share/CMakeLists.txt b/code/ryzom/server/src/server_share/CMakeLists.txt
index d043c55ca..c208f3ecc 100644
--- a/code/ryzom/server/src/server_share/CMakeLists.txt
+++ b/code/ryzom/server/src/server_share/CMakeLists.txt
@@ -31,4 +31,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_servershare ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS ryzom_servershare LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_servershare LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/export/CMakeLists.txt b/code/ryzom/tools/leveldesign/export/CMakeLists.txt
index d8125d882..c1d34519d 100644
--- a/code/ryzom/tools/leveldesign/export/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/export/CMakeLists.txt
@@ -12,5 +12,5 @@ NL_ADD_LIB_SUFFIX(ryzom_export)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_export LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_export LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
index 92263a73c..99f60aea7 100644
--- a/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
@@ -16,4 +16,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(georges_dll ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.h ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS georges_dll LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS georges_dll LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
index 985b00cf9..54cbc63c0 100644
--- a/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
@@ -6,7 +6,7 @@
#-----------------------------------------------------------------------------
# This tells the application(s) where to find the installed data.
-ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_PREFIX}/georges_editor_qt/\\"")
+ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/georges_editor_qt/\\"")
ADD_SUBDIRECTORY(src)
diff --git a/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
index 29f77d650..76f8e63f7 100644
--- a/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
@@ -23,4 +23,4 @@ NL_ADD_LIB_SUFFIX(georges_plugin_sound)
ADD_DEFINITIONS(${MFC_DEFINITIONS})
-INSTALL(TARGETS georges_plugin_sound LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS georges_plugin_sound LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt b/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
index c2dd48d41..5c5ce949c 100644
--- a/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
@@ -14,7 +14,7 @@ NL_DEFAULT_PROPS(ryzom_mission_compiler_lib "Ryzom, Library: Mission Compiler")
NL_ADD_RUNTIME_FLAGS(ryzom_mission_compiler_lib)
NL_ADD_LIB_SUFFIX(ryzom_mission_compiler_lib)
-INSTALL(TARGETS ryzom_mission_compiler_lib LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_mission_compiler_lib LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
FILE(GLOB EXESRC main.cpp)
diff --git a/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
index ab6386118..89fb06086 100644
--- a/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
@@ -12,5 +12,5 @@ NL_ADD_LIB_SUFFIX(ryzom_landexport)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_landexport LIBRARY DESTINATION lib ARCHIVE DESTINATION lib COMPONENT libraries)
+INSTALL(TARGETS ryzom_landexport LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
index 04e11fd50..417ed83b6 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_fauna_graph_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_fauna_graph_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_fauna_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
index 4fc58a958..3c9e57857 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
@@ -18,5 +18,5 @@ NL_ADD_LIB_SUFFIX(world_editor_graph_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_graph_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
index f12eab168..3c93ab01b 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
@@ -21,6 +21,6 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(world_editor_plugin ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS world_editor_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
INSTALL(FILES WorldEditorPlugin.cfg DESTINATION bin COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
index 4175cb8f9..0449ec5d5 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_primitive_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_primitive_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_primitive_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
index fdfa3e1ca..64da758a7 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
@@ -18,5 +18,5 @@ NL_ADD_LIB_SUFFIX(world_editor_shard_monitor_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_shard_monitor_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_shard_monitor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
index 298c0cc0d..9337af50b 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_sound_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_sound_plugin LIBRARY DESTINATION lib RUNTIME DESTINATION bin ARCHIVE DESTINATION lib COMPONENT tools3d)
+INSTALL(TARGETS world_editor_sound_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
From 8ab293a6ece2110066a2b7998cc70c80a8671e59 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 22 Sep 2012 23:42:40 +0200
Subject: [PATCH 006/125] Changed: #1493 Fixed some directories
---
code/nel/samples/3d/cluster_viewer/CMakeLists.txt | 2 +-
code/nel/tools/3d/object_viewer_qt/CMakeLists.txt | 2 +-
.../login_system/nel_launcher_windows_ext2/CMakeLists.txt | 2 +-
code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt | 4 ++--
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
index a68bf0d84..3acb450c5 100644
--- a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
+++ b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
@@ -23,7 +23,7 @@ INSTALL(DIRECTORY fonts/
PATTERN ".svn" EXCLUDE
PATTERN "Makefile*" EXCLUDE)
INSTALL(DIRECTORY max/
- DESTINATION ${NL_SHARE_PREFIX}/nel/nl_sample_clusterview/max
+ DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview/max
COMPONENT samples3d
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index 4dd05de9d..9d4a7bd34 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -15,7 +15,7 @@ ENDIF()
ADD_SUBDIRECTORY(src)
INSTALL(DIRECTORY data/
- DESTINATION share/object_viewer_qt/data
+ DESTINATION ${NL_SHARE_PREFIX}/object_viewer_qt/data
COMPONENT data
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nelns/login_system/nel_launcher_windows_ext2/CMakeLists.txt b/code/nelns/login_system/nel_launcher_windows_ext2/CMakeLists.txt
index 79093faef..f139252b8 100644
--- a/code/nelns/login_system/nel_launcher_windows_ext2/CMakeLists.txt
+++ b/code/nelns/login_system/nel_launcher_windows_ext2/CMakeLists.txt
@@ -20,4 +20,4 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
INSTALL(TARGETS nel_launcher_ext2 RUNTIME DESTINATION bin COMPONENT launcher)
-INSTALL(FILES nel_launcher.cfg DESTINATION etc/nel COMPONENT launcher)
+INSTALL(FILES nel_launcher.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT launcher)
diff --git a/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
index 54cbc63c0..3edbb69fb 100644
--- a/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_editor_qt/CMakeLists.txt
@@ -6,12 +6,12 @@
#-----------------------------------------------------------------------------
# This tells the application(s) where to find the installed data.
-ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/georges_editor_qt/\\"")
+ADD_DEFINITIONS(-DDATA_DIR="\\"${RYZOM_SHARE_ABSOLUTE_PREFIX}/georges_editor_qt/\\"")
ADD_SUBDIRECTORY(src)
INSTALL(DIRECTORY data/
- DESTINATION share/georges_editor_qt/data
+ DESTINATION ${RYZOM_SHARE_PREFIX}/georges_editor_qt/data
COMPONENT data
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
From e8e75d05c026c67c078aa919aee8dd6b9ae6caab Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 22 Sep 2012 23:53:46 +0200
Subject: [PATCH 007/125] Changed: Synchronization with SVN
---
.../data/gamedev/interfaces_v3/help.xml | 2 +-
.../gamedev/interfaces_v3/out_v2_select.xml | 4 +-
.../interface_v3/group_in_scene_user_info.cpp | 16 ++++--
.../client/src/interface_v3/guild_manager.cpp | 51 ++++++++++---------
4 files changed, 43 insertions(+), 30 deletions(-)
diff --git a/code/ryzom/client/data/gamedev/interfaces_v3/help.xml b/code/ryzom/client/data/gamedev/interfaces_v3/help.xml
index 4d74b184c..39cfb1af4 100644
--- a/code/ryzom/client/data/gamedev/interfaces_v3/help.xml
+++ b/code/ryzom/client/data/gamedev/interfaces_v3/help.xml
@@ -864,7 +864,7 @@
+ value="http://app.ryzom.com/ticket_system/index.php?mode=load" />
-
-
+
+
getDisplayName();
ucstring entityTitle = entity->getTitle();
+ // For some NPC's the name is empty and only a title is given,
+ // in that case, treat the title as the name.
+ if (entityName.empty())
+ {
+ entityName = entityTitle;
+ entityTitle.clear();
+ }
+
ucstring entityTag1 = entity->getTag(1);
ucstring entityTag2 = entity->getTag(2);
ucstring entityTag3 = entity->getTag(3);
@@ -174,7 +182,7 @@ CGroupInSceneUserInfo *CGroupInSceneUserInfo::build (CEntityCL *entity)
bars[i]= false;
name= !entityName.empty() && pIM->getDbProp(dbEntry+"NPCNAME")->getValueBool();
symbol= false;
- title= (entityName.empty() && pIM->getDbProp(dbEntry+"NPCNAME")->getValueBool()) || pIM->getDbProp(dbEntry+"NPCTITLE")->getValueBool();
+ title= !entityTitle.empty() && pIM->getDbProp(dbEntry+"NPCTITLE")->getValueBool();
guildName= false;
templateName = "in_scene_user_info";
rpTags = (!entityTag1.empty() || !entityTag2.empty() || !entityTag3.empty() || !entityTag4.empty() ) && pIM->getDbProp(dbEntry+"RPTAGS")->getValueBool();
@@ -511,13 +519,13 @@ CGroupInSceneUserInfo *CGroupInSceneUserInfo::build (CEntityCL *entity)
{
info->delView(logoOver);
}
- //leftGroup->setW( leftGroup->getW() + 42 );
+ leftGroup->setW( leftGroup->getW() + 42 );
}
else
{
info->delView(logo);
info->delView(logoOver);
- //leftGroup->setX(0);
+ leftGroup->setX(0);
}
leftGroup->invalidateCoords();
}
@@ -887,6 +895,8 @@ void CGroupInSceneUserInfo::updateDynamicData ()
_Name->setColor(entityColor);
_Name->setModulateGlobalColor(false);
ucstring entityName = _Entity->getDisplayName();
+ if (entityName.empty())
+ entityName = _Entity->getTitle();
if (pPlayer != NULL)
if (pPlayer->isAFK())
entityName += CI18N::get("uiAFK");
diff --git a/code/ryzom/client/src/interface_v3/guild_manager.cpp b/code/ryzom/client/src/interface_v3/guild_manager.cpp
index d1f8a2c9f..dce9558f9 100644
--- a/code/ryzom/client/src/interface_v3/guild_manager.cpp
+++ b/code/ryzom/client/src/interface_v3/guild_manager.cpp
@@ -362,44 +362,47 @@ void CGuildManager::update()
if (node && node->getValueBool())
{
// See if we need to show any online/offline messages
- static vector CachedGuildMembers;
+ static map CachedGuildMembers;
ucstring onlineMessage = CI18N::get("uiPlayerOnline");
ucstring offlineMessage = CI18N::get("uiPlayerOffline");
for (uint i = 0; i < _GuildMembers.size(); ++i)
{
- for (uint j = 0; j < CachedGuildMembers.size(); ++j)
+ map::const_iterator it = CachedGuildMembers.find(_GuildMembers[i].Name);
+ if ( it != CachedGuildMembers.end() )
{
- // Status change is from offline to online/abroad online or vice versa.
- TCharConnectionState prevState = CachedGuildMembers[j].Online;
- TCharConnectionState curState = _GuildMembers[i].Online;
- bool showMsg = (prevState != curState) &&
- (CachedGuildMembers[j].Name == _GuildMembers[i].Name) &&
- (prevState == ccs_offline || curState == ccs_offline);
-
- if (showMsg)
+ if ( (*it).second.Online == _GuildMembers[i].Online)
{
- ucstring msg = (_GuildMembers[i].Online != ccs_offline) ? onlineMessage : offlineMessage;
- strFindReplace(msg, "%s", _GuildMembers[i].Name);
- string cat = getStringCategory(msg, msg);
- map::const_iterator it;
- NLMISC::CRGBA col = CRGBA::Yellow;
- it = ClientCfg.SystemInfoParams.find(toLower(cat));
- if (it != ClientCfg.SystemInfoParams.end())
- {
- col = it->second.Color;
- }
- bool dummy;
- PeopleInterraction.ChatInput.Guild.displayMessage(msg, col, 2, &dummy);
- break;
+ // Online status not changed for this member
+ continue;
}
+
+ if ( (*it).second.Online != ccs_offline && _GuildMembers[i].Online != ccs_offline)
+ {
+ // Not from offline, or to offline, so don't show anything
+ continue;
+ }
+
+ ucstring msg = (_GuildMembers[i].Online != ccs_offline) ? onlineMessage : offlineMessage;
+ strFindReplace(msg, "%s", _GuildMembers[i].Name);
+ string cat = getStringCategory(msg, msg);
+ map::const_iterator it;
+ NLMISC::CRGBA col = CRGBA::Yellow;
+ it = ClientCfg.SystemInfoParams.find(toLower(cat));
+ if (it != ClientCfg.SystemInfoParams.end())
+ {
+ col = it->second.Color;
+ }
+ bool dummy;
+ PeopleInterraction.ChatInput.Guild.displayMessage(msg, col, 2, &dummy);
+ break;
}
}
CachedGuildMembers.clear();
for (uint i = 0; i < _GuildMembers.size(); ++i)
{
- CachedGuildMembers.push_back(_GuildMembers[i]);
+ CachedGuildMembers.insert(make_pair(_GuildMembers[i].Name, _GuildMembers[i]));
}
}
From ece10f2965347269430ee94ffddf86b9c8c73623 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 23 Sep 2012 20:26:26 +0200
Subject: [PATCH 008/125] Fixed: Compilation with GCC
---
code/ryzom/tools/leveldesign/mp_generator/utils.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/ryzom/tools/leveldesign/mp_generator/utils.h b/code/ryzom/tools/leveldesign/mp_generator/utils.h
index 6804a5bc7..63148f61f 100644
--- a/code/ryzom/tools/leveldesign/mp_generator/utils.h
+++ b/code/ryzom/tools/leveldesign/mp_generator/utils.h
@@ -245,7 +245,7 @@ public:
}
private:
-
+
CLookup _Indices [NC];
CItems _Items;
@@ -280,7 +280,7 @@ public:
{
throw Exception("Could not open html: %s", filename.c_str());
}
- fprintf( _File, ("\n\n" + title + "\n\n").c_str() );
+ fprintf( _File, "\n\n%s\n\n", title.c_str() );
}
///
@@ -289,7 +289,7 @@ public:
if ( ! _Enabled )
return;
- fprintf( _File, htmlCode.c_str() );
+ fprintf( _File, "%s", htmlCode.c_str() );
}
///
From 1604cb3f8cea45679976f6600e7cecfd3abbe6de Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 23 Sep 2012 20:27:51 +0200
Subject: [PATCH 009/125] Changed: Compiler flags must be defined after options
declaration
---
code/CMakeLists.txt | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt
index 926f66e35..3f5fa94d5 100644
--- a/code/CMakeLists.txt
+++ b/code/CMakeLists.txt
@@ -48,9 +48,6 @@ SET(NL_VERSION_MINOR 8)
SET(NL_VERSION_PATCH 0)
SET(NL_VERSION "${NL_VERSION_MAJOR}.${NL_VERSION_MINOR}.${NL_VERSION_PATCH}")
-NL_SETUP_BUILD()
-NL_SETUP_BUILD_FLAGS()
-
#-----------------------------------------------------------------------------
# Redirect output files
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
@@ -87,6 +84,9 @@ RYZOM_SETUP_PREFIX_PATHS()
NL_CONFIGURE_CHECKS()
+NL_SETUP_BUILD()
+NL_SETUP_BUILD_FLAGS()
+
#-----------------------------------------------------------------------------
#Platform specifics
From 6f480b4a87934b9949dd6ff24105f75552e52e67 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 23 Sep 2012 20:30:28 +0200
Subject: [PATCH 010/125] Fixed: #1493 Remove also -O flags from environment
variables
---
code/CMakeModules/nel.cmake | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 5768987e3..fcf25b258 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -422,8 +422,9 @@ MACRO(NL_SETUP_BUILD)
SET(PLATFORM_CFLAGS "$ENV{CFLAGS} ${PLATFORM_CFLAGS}")
SET(PLATFORM_LINKFLAGS "$ENV{LDFLAGS} ${PLATFORM_LINKFLAGS}")
- # Remove -g flag because we are managing it ourself
+ # Remove -g and -O flag because we are managing them ourself
STRING(REPLACE "-g" "" PLATFORM_CFLAGS ${PLATFORM_CFLAGS})
+ STRING(REGEX REPLACE "-O[0-9s]" "" PLATFORM_CFLAGS ${PLATFORM_CFLAGS})
# Strip spaces
STRING(STRIP ${PLATFORM_CFLAGS} PLATFORM_CFLAGS)
From 52d086fb8a65cda628d6396fd5e098b3cf263390 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 23 Sep 2012 23:56:34 +0200
Subject: [PATCH 011/125] Changed: #1493 Fixed absolute prefixes
---
code/CMakeModules/nel.cmake | 73 +++++++++++++------------------------
code/config.h.cmake | 1 -
2 files changed, 25 insertions(+), 49 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index fcf25b258..29bedb4f4 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -621,92 +621,87 @@ MACRO(NL_SETUP_BUILD_FLAGS)
SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${PLATFORM_LINKFLAGS} ${NL_RELEASE_LINKFLAGS}" CACHE STRING "" FORCE)
ENDMACRO(NL_SETUP_BUILD_FLAGS)
+# Macro to create x_ABSOLUTE_PREFIX from x_PREFIX
+MACRO(NL_MAKE_ABSOLUTE_PREFIX NAME_RELATIVE NAME_ABSOLUTE)
+ IF(IS_ABSOLUTE ${NAME_RELATIVE})
+ SET(${NAME_ABSOLUTE} ${NAME_RELATIVE})
+ ELSE(IS_ABSOLUTE ${NAME_RELATIVE})
+ IF(WIN32)
+ SET(${NAME_ABSOLUTE} ${${NAME_RELATIVE}})
+ ELSE(WIN32)
+ SET(${NAME_ABSOLUTE} ${CMAKE_INSTALL_PREFIX}/${${NAME_RELATIVE}})
+ ENDIF(WIN32)
+ ENDIF(IS_ABSOLUTE ${NAME_RELATIVE})
+ENDMACRO(NL_MAKE_ABSOLUTE_PREFIX)
+
MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/etc path.
IF(NOT NL_ETC_PREFIX)
IF(WIN32)
SET(NL_ETC_PREFIX "../etc/nel" CACHE PATH "Installation path for configurations")
- SET(NL_ETC_ABSOLUTE_PREFIX ${NL_ETC_PREFIX})
ELSE(WIN32)
SET(NL_ETC_PREFIX "etc/nel" CACHE PATH "Installation path for configurations")
- SET(NL_ETC_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_ETC_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_ETC_PREFIX)
- SET(NL_ETC_ABSOLUTE_PREFIX ${NL_ETC_PREFIX})
ENDIF(NOT NL_ETC_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_ETC_PREFIX NL_ETC_ABSOLUTE_PREFIX)
## Allow override of install_prefix/share path.
IF(NOT NL_SHARE_PREFIX)
IF(WIN32)
SET(NL_SHARE_PREFIX "../share/nel" CACHE PATH "Installation path for data.")
- SET(NL_SHARE_ABSOLUTE_PREFIX ${NL_SHARE_PREFIX})
ELSE(WIN32)
SET(NL_SHARE_PREFIX "share/nel" CACHE PATH "Installation path for data.")
- SET(NL_SHARE_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_SHARE_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_SHARE_PREFIX)
- SET(NL_SHARE_ABSOLUTE_PREFIX ${NL_SHARE_PREFIX})
ENDIF(NOT NL_SHARE_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_SHARE_PREFIX NL_SHARE_ABSOLUTE_PREFIX)
## Allow override of install_prefix/sbin path.
IF(NOT NL_SBIN_PREFIX)
IF(WIN32)
SET(NL_SBIN_PREFIX "../sbin" CACHE PATH "Installation path for admin tools and services.")
- SET(NL_SBIN_ABSOLUTE_PREFIX ${NL_SBIN_PREFIX})
ELSE(WIN32)
SET(NL_SBIN_PREFIX "sbin" CACHE PATH "Installation path for admin tools and services.")
- SET(NL_SBIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_SBIN_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_SBIN_PREFIX)
- SET(NL_SBIN_ABSOLUTE_PREFIX ${NL_SBIN_PREFIX})
ENDIF(NOT NL_SBIN_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_SBIN_PREFIX NL_SBIN_ABSOLUTE_PREFIX)
## Allow override of install_prefix/bin path.
IF(NOT NL_BIN_PREFIX)
IF(WIN32)
SET(NL_BIN_PREFIX "../bin" CACHE PATH "Installation path for tools and applications.")
- SET(NL_BIN_ABSOLUTE_PREFIX ${NL_BIN_PREFIX})
ELSE(WIN32)
SET(NL_BIN_PREFIX "bin" CACHE PATH "Installation path for tools and applications.")
- SET(NL_BIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_BIN_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_BIN_PREFIX)
- SET(NL_BIN_ABSOLUTE_PREFIX ${NL_BIN_PREFIX})
ENDIF(NOT NL_BIN_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_BIN_PREFIX NL_BIN_ABSOLUTE_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT NL_LIB_PREFIX)
IF(WIN32)
SET(NL_LIB_PREFIX "../lib" CACHE PATH "Installation path for libraries.")
- SET(NL_LIB_ABSOLUTE_PREFIX ${NL_LIB_PREFIX})
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(NL_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
ELSE(CMAKE_LIBRARY_ARCHITECTURE)
SET(NL_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_LIB_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_LIB_PREFIX)
- SET(NL_LIB_ABSOLUTE_PREFIX ${NL_LIB_PREFIX})
ENDIF(NOT NL_LIB_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_LIB_PREFIX NL_LIB_ABSOLUTE_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT NL_DRIVER_PREFIX)
IF(WIN32)
SET(NL_DRIVER_PREFIX "../lib" CACHE PATH "Installation path for drivers.")
- SET(NL_DRIVER_ABSOLUTE_PREFIX ${NL_DRIVER_PREFIX})
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(NL_DRIVER_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
ELSE(CMAKE_LIBRARY_ARCHITECTURE)
SET(NL_DRIVER_PREFIX "lib/nel" CACHE PATH "Installation path for drivers.")
ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_DRIVER_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${NL_DRIVER_PREFIX})
ENDIF(WIN32)
- ELSE(NOT NL_DRIVER_PREFIX)
- SET(NL_DRIVER_ABSOLUTE_PREFIX ${NL_DRIVER_PREFIX})
ENDIF(NOT NL_DRIVER_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(NL_DRIVER_PREFIX NL_DRIVER_ABSOLUTE_PREFIX)
ENDMACRO(NL_SETUP_PREFIX_PATHS)
@@ -715,83 +710,65 @@ MACRO(RYZOM_SETUP_PREFIX_PATHS)
IF(NOT RYZOM_ETC_PREFIX)
IF(WIN32)
SET(RYZOM_ETC_PREFIX "." CACHE PATH "Installation path for configurations")
- SET(RYZOM_ETC_ABSOLUTE_PREFIX ${RYZOM_ETC_PREFIX})
ELSE(WIN32)
SET(RYZOM_ETC_PREFIX "etc/ryzom" CACHE PATH "Installation path for configurations")
- SET(RYZOM_ETC_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_ETC_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_ETC_PREFIX)
- SET(RYZOM_ETC_ABSOLUTE_PREFIX ${RYZOM_ETC_PREFIX})
ENDIF(NOT RYZOM_ETC_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_ETC_PREFIX RYZOM_ETC_ABSOLUTE_PREFIX)
## Allow override of install_prefix/share path.
IF(NOT RYZOM_SHARE_PREFIX)
IF(WIN32)
SET(RYZOM_SHARE_PREFIX "." CACHE PATH "Installation path for data.")
- SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${RYZOM_SHARE_PREFIX})
ELSE(WIN32)
SET(RYZOM_SHARE_PREFIX "share/ryzom" CACHE PATH "Installation path for data.")
- SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_SHARE_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_SHARE_PREFIX)
- SET(RYZOM_SHARE_ABSOLUTE_PREFIX ${RYZOM_SHARE_PREFIX})
ENDIF(NOT RYZOM_SHARE_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_SHARE_PREFIX RYZOM_SHARE_ABSOLUTE_PREFIX)
## Allow override of install_prefix/sbin path.
IF(NOT RYZOM_SBIN_PREFIX)
IF(WIN32)
SET(RYZOM_SBIN_PREFIX "." CACHE PATH "Installation path for admin tools and services.")
- SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${RYZOM_SBIN_PREFIX})
ELSE(WIN32)
SET(RYZOM_SBIN_PREFIX "sbin" CACHE PATH "Installation path for admin tools and services.")
- SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_SBIN_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_SBIN_PREFIX)
- SET(RYZOM_SBIN_ABSOLUTE_PREFIX ${RYZOM_SBIN_PREFIX})
ENDIF(NOT RYZOM_SBIN_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_SBIN_PREFIX RYZOM_SBIN_ABSOLUTE_PREFIX)
## Allow override of install_prefix/bin path.
IF(NOT RYZOM_BIN_PREFIX)
IF(WIN32)
SET(RYZOM_BIN_PREFIX "." CACHE PATH "Installation path for tools and applications.")
- SET(RYZOM_BIN_ABSOLUTE_PREFIX ${RYZOM_BIN_PREFIX})
ELSE(WIN32)
SET(RYZOM_BIN_PREFIX "bin" CACHE PATH "Installation path for tools.")
- SET(RYZOM_BIN_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_BIN_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_BIN_PREFIX)
- SET(RYZOM_BIN_ABSOLUTE_PREFIX ${RYZOM_BIN_PREFIX})
ENDIF(NOT RYZOM_BIN_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_BIN_PREFIX RYZOM_BIN_ABSOLUTE_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT RYZOM_LIB_PREFIX)
IF(WIN32)
SET(RYZOM_LIB_PREFIX "." CACHE PATH "Installation path for libraries.")
- SET(RYZOM_LIB_ABSOLUTE_PREFIX ${RYZOM_LIB_PREFIX})
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(RYZOM_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
ELSE(CMAKE_LIBRARY_ARCHITECTURE)
SET(RYZOM_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(RYZOM_LIB_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_LIB_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_LIB_PREFIX)
- SET(RYZOM_LIB_ABSOLUTE_PREFIX ${RYZOM_LIB_PREFIX})
ENDIF(NOT RYZOM_LIB_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_LIB_PREFIX RYZOM_LIB_ABSOLUTE_PREFIX)
## Allow override of install_prefix/games path.
IF(NOT RYZOM_GAMES_PREFIX)
IF(WIN32)
SET(RYZOM_GAMES_PREFIX "." CACHE PATH "Installation path for tools and applications.")
- SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${RYZOM_GAMES_PREFIX})
ELSE(WIN32)
SET(RYZOM_GAMES_PREFIX "games" CACHE PATH "Installation path for client.")
- SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${CMAKE_INSTALL_PREFIX}/${RYZOM_GAMES_PREFIX})
ENDIF(WIN32)
- ELSE(NOT RYZOM_GAMES_PREFIX)
- SET(RYZOM_GAMES_ABSOLUTE_PREFIX ${RYZOM_GAMES_PREFIX})
ENDIF(NOT RYZOM_GAMES_PREFIX)
+ NL_MAKE_ABSOLUTE_PREFIX(RYZOM_GAMES_PREFIX RYZOM_GAMES_ABSOLUTE_PREFIX)
ENDMACRO(RYZOM_SETUP_PREFIX_PATHS)
diff --git a/code/config.h.cmake b/code/config.h.cmake
index 6368e179b..d3c9f701d 100644
--- a/code/config.h.cmake
+++ b/code/config.h.cmake
@@ -49,7 +49,6 @@
#cmakedefine NL_LIB_PREFIX "${NL_LIB_ABSOLUTE_PREFIX}"
#cmakedefine NL_DRIVER_PREFIX "${NL_DRIVER_ABSOLUTE_PREFIX}"
-#cmakedefine RYZOM_PREFIX "${RYZOM_ABSOLUTE_PREFIX}"
#cmakedefine RYZOM_BIN_PREFIX "${RYZOM_BIN_ABSOLUTE_PREFIX}"
#cmakedefine RYZOM_ETC_PREFIX "${RYZOM_ETC_ABSOLUTE_PREFIX}"
#cmakedefine RYZOM_SHARE_PREFIX "${RYZOM_SHARE_ABSOLUTE_PREFIX}"
From 8d9c96a97a8499ecc0406c89f49a491df00da291 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 23 Sep 2012 23:58:03 +0200
Subject: [PATCH 012/125] Changed: Use "lib" prefix under unices for plugins
---
.../3d/object_viewer_qt/src/extension_system/plugin_spec.cpp | 3 ++-
.../3d/object_viewer_qt/src/extension_system/plugin_spec.h | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
index 30e35f8c1..f45eae4a1 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
@@ -71,6 +71,7 @@ PluginSpec::PluginSpec()
# error "Unknown compilation mode, can't build suffix"
# endif
#elif defined (NL_OS_UNIX)
+ m_prefix = "lib";
m_suffix = ".so";
#else
# error "You must define the lib suffix for your platform"
@@ -139,7 +140,7 @@ QList PluginSpec::dependencySpecs() const
bool PluginSpec::setFileName(const QString &fileName)
{
- m_fileName = fileName + m_suffix;
+ m_fileName = m_prefix + fileName + m_suffix;
m_filePath = m_location + "/" + m_fileName;
nlinfo(m_filePath.toStdString().c_str());
diff --git a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.h b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.h
index c28980d69..0ce74d004 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.h
+++ b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.h
@@ -84,6 +84,7 @@ private:
QString m_description;
QString m_nameSpecFile;
+ QString m_prefix;
QString m_suffix;
int m_state;
bool m_enabled, m_enabledStartup;
From 202803421407fb7f353babf75487660b606edef5 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 08:25:47 +0200
Subject: [PATCH 013/125] Changed: Install plugins specs in
${NL_SHARE_PREFIX}/object_viewer_qt/plugins under Linux
---
code/nel/tools/3d/object_viewer_qt/CMakeLists.txt | 12 ++++++++++--
code/nel/tools/3d/object_viewer_qt/src/main.cpp | 6 +++---
.../src/plugins/bnp_manager/CMakeLists.txt | 1 +
.../object_viewer_qt/src/plugins/core/CMakeLists.txt | 1 +
.../src/plugins/disp_sheet_id/CMakeLists.txt | 1 +
.../src/plugins/example/CMakeLists.txt | 1 +
.../src/plugins/georges_editor/CMakeLists.txt | 1 +
.../src/plugins/landscape_editor/CMakeLists.txt | 1 +
.../object_viewer_qt/src/plugins/log/CMakeLists.txt | 1 +
.../src/plugins/mission_compiler/CMakeLists.txt | 1 +
.../src/plugins/object_viewer/CMakeLists.txt | 1 +
.../src/plugins/ovqt_sheet_builder/CMakeLists.txt | 1 +
.../src/plugins/translation_manager/CMakeLists.txt | 1 +
.../src/plugins/zone_painter/CMakeLists.txt | 1 +
14 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index 9d4a7bd34..b87416280 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -5,8 +5,16 @@
#
#-----------------------------------------------------------------------------
-# This tells the application(s) where to fidn the installed data.
-ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt/\\"")
+# This tells the application(s) where to find the installed data.
+IF(WIN32)
+ SET(OVQT_PLUGIN_DIR "plugins")
+ELSEIF(APPLE)
+ # TODO: under Mac OS X, don't install but copy files in application package
+ SET(OVQT_PLUGIN_DIR "plugins")
+ELSE(WIN32)
+ SET(OVQT_PLUGIN_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/plugins)
+ ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt/\\"")
+ENDIF(WIN32)
IF(UNIX AND WITH_STATIC)
MESSAGE(FATAL_ERROR "OVQT does not work with static NeL builds on Unix atm.")
diff --git a/code/nel/tools/3d/object_viewer_qt/src/main.cpp b/code/nel/tools/3d/object_viewer_qt/src/main.cpp
index 7e9e05a77..fd5432a3c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/main.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/main.cpp
@@ -151,10 +151,10 @@ sint main(int argc, char **argv)
ExtensionSystem::PluginManager pluginManager;
pluginManager.setSettings(settings);
QStringList pluginPaths;
-#if !defined(NL_OS_MAC)
- pluginPaths << settings->value("PluginPath", "./plugins").toString();
-#else
+#if defined(NL_OS_MAC)
pluginPaths << settings->value("PluginPath", qApp->applicationDirPath() + QString("/../PlugIns/ovqt")).toString();
+#else
+ pluginPaths << settings->value("PluginPath", QString("%1/plugins").arg(DATA_DIR)).toString();
#endif
pluginManager.setPluginPaths(pluginPaths);
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
index 746cc48b6..d84708f23 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
@@ -45,3 +45,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_bnp_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
index dcd9bd81c..a88c6501c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
@@ -56,3 +56,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_core)
ADD_DEFINITIONS(-DCORE_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
index 0876d192c..0b31363c0 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
@@ -41,3 +41,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_disp_sheet_id)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
index 9e6b308a6..d0ad34245 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
@@ -39,3 +39,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_example)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
index 2e8610dfa..ac73e5503 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
@@ -45,3 +45,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_georges_editor)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
index ebff67fa5..098b2e086 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
@@ -46,3 +46,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_landscape_editor)
ADD_DEFINITIONS(-DLANDSCAPE_EDITOR_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
index a65fe1b9f..71a6a32fd 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
@@ -37,3 +37,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_log)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
index 61a55a94d..7c0272a7c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
@@ -47,3 +47,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_mission_compiler)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
index e0a4697c7..61838ff3c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
@@ -164,3 +164,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
index bdb3e68e6..28c8a373d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
@@ -30,3 +30,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_sheet_builder)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
index befb70845..e142c9b9d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
@@ -49,3 +49,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_translation_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
index a40a0eb94..02a4a73fc 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
@@ -43,3 +43,4 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_zone_painter)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
From cb8cb918dda5f659abfe1296862468f78c39ae43 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 08:56:10 +0200
Subject: [PATCH 014/125] Changed: #1493 Fixed absolute prefixes
---
code/CMakeModules/nel.cmake | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 29bedb4f4..0c784786f 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -623,15 +623,15 @@ ENDMACRO(NL_SETUP_BUILD_FLAGS)
# Macro to create x_ABSOLUTE_PREFIX from x_PREFIX
MACRO(NL_MAKE_ABSOLUTE_PREFIX NAME_RELATIVE NAME_ABSOLUTE)
- IF(IS_ABSOLUTE ${NAME_RELATIVE})
- SET(${NAME_ABSOLUTE} ${NAME_RELATIVE})
- ELSE(IS_ABSOLUTE ${NAME_RELATIVE})
+ IF(IS_ABSOLUTE "${${NAME_RELATIVE}}")
+ SET(${NAME_ABSOLUTE} ${${NAME_RELATIVE}})
+ ELSE(IS_ABSOLUTE "${${{NAME_RELATIVE}}")
IF(WIN32)
SET(${NAME_ABSOLUTE} ${${NAME_RELATIVE}})
ELSE(WIN32)
SET(${NAME_ABSOLUTE} ${CMAKE_INSTALL_PREFIX}/${${NAME_RELATIVE}})
ENDIF(WIN32)
- ENDIF(IS_ABSOLUTE ${NAME_RELATIVE})
+ ENDIF(IS_ABSOLUTE "${${NAME_RELATIVE}}")
ENDMACRO(NL_MAKE_ABSOLUTE_PREFIX)
MACRO(NL_SETUP_PREFIX_PATHS)
From 476377dd887034fa220b2da3d986fe253ffe3467 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 08:56:49 +0200
Subject: [PATCH 015/125] Changed: Fixed plugins specs name to install
---
.../3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt | 3 ++-
.../tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt | 3 ++-
.../object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt | 3 ++-
.../3d/object_viewer_qt/src/plugins/example/CMakeLists.txt | 3 ++-
.../object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt | 3 ++-
.../src/plugins/landscape_editor/CMakeLists.txt | 3 ++-
.../tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt | 3 ++-
.../src/plugins/mission_compiler/CMakeLists.txt | 3 ++-
.../object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt | 3 ++-
.../src/plugins/ovqt_sheet_builder/CMakeLists.txt | 3 ++-
.../src/plugins/translation_manager/CMakeLists.txt | 3 ++-
.../object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt | 3 ++-
12 files changed, 24 insertions(+), 12 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
index d84708f23..d3b1e745c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
@@ -45,4 +45,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_bnp_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_bnp_manager.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
index a88c6501c..7e36c6107 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
@@ -56,4 +56,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_core)
ADD_DEFINITIONS(-DCORE_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_core.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
index 0b31363c0..f89042c7c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
@@ -41,4 +41,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_disp_sheet_id)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_disp_sheet_id.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
index d0ad34245..c2496a2f8 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
@@ -39,4 +39,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_example)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_example.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
index ac73e5503..a69af5a27 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
@@ -45,4 +45,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_georges_editor)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_georges_editor.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
index 098b2e086..fc82afc8a 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
@@ -46,4 +46,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_landscape_editor)
ADD_DEFINITIONS(-DLANDSCAPE_EDITOR_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_landscape_editor.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
index 71a6a32fd..0d9021cdb 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
@@ -37,4 +37,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_log)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_log.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
index 7c0272a7c..afd7b064a 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
@@ -47,4 +47,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_mission_compiler)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_mission_compiler.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
index 61838ff3c..21349ebd5 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
@@ -164,4 +164,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_object_viewer.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
index 28c8a373d..bdaa3f4c9 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
@@ -30,4 +30,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_sheet_builder)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_sheet_builder.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
index e142c9b9d..0bf25a16d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
@@ -49,4 +49,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_translation_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_translation_manager.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
index 02a4a73fc..8ccdd0286 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
@@ -43,4 +43,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_zone_painter)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_zone_painter.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+
From 541a147d34da320016eff773a87b76abeaca79f3 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 09:49:52 +0200
Subject: [PATCH 016/125] Changed: Homogeneous carriage returns
---
code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
index 7dc1445bb..099408caa 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
@@ -21,12 +21,12 @@ SET(OBJECT_VIEWER_TS translations/object_viewer_qt_en.ts
SET(QT_USE_QTGUI TRUE)
SET(QT_USE_QTOPENGL TRUE)
-
-IF(WIN32)
- SET(OBJECT_VIEWER_RC object_viewer_qt.rc)
+
+IF(WIN32)
+ SET(OBJECT_VIEWER_RC object_viewer_qt.rc)
ENDIF(WIN32)
-QT4_ADD_TRANSLATION(OBJECT_VIEWER_QM ${OBJECT_VIEWER_TS})
+QT4_ADD_TRANSLATION(OBJECT_VIEWER_QM ${OBJECT_VIEWER_TS})
QT4_ADD_RESOURCES( OBJECT_VIEWER_RC_SRCS ${OBJECT_VIEWER_RCS})
QT4_WRAP_CPP( OBJECT_VIEWER_MOC_SRCS ${OBJECT_VIEWER_HDR} )
From ddd33c609096570f6b2ca56f83052c47575a3e07 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 09:52:35 +0200
Subject: [PATCH 017/125] Fixed: OVQT plugins loading under Unices (in the
order: local, OVQT plugins, system)
---
.../tools/3d/object_viewer_qt/CMakeLists.txt | 2 +-
.../src/extension_system/plugin_spec.cpp | 45 +++++++++++++++++--
2 files changed, 43 insertions(+), 4 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index b87416280..41896e9c5 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -13,7 +13,7 @@ ELSEIF(APPLE)
SET(OVQT_PLUGIN_DIR "plugins")
ELSE(WIN32)
SET(OVQT_PLUGIN_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/plugins)
- ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt/\\"")
+ ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt\\"" -DPLUGINS_DIR="\\"${NL_LIB_ABSOLUTE_PREFIX}/object_viewer_qt\\"")
ENDIF(WIN32)
IF(UNIX AND WITH_STATIC)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
index f45eae4a1..f24cbcfb1 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
@@ -31,6 +31,10 @@
#include
#include
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
namespace ExtensionSystem
{
const char *const PLUGIN_SPEC_NAME = "name";
@@ -143,9 +147,44 @@ bool PluginSpec::setFileName(const QString &fileName)
m_fileName = m_prefix + fileName + m_suffix;
m_filePath = m_location + "/" + m_fileName;
+ QFile file;
+ file.setFileName(m_filePath);
+
+ bool exists = file.exists();
+
+#ifdef NL_OS_UNIX
+
+#ifdef PLUGINS_DIR
+ if (!exists)
+ {
+ // if plugin can't be found in the same directory as spec file,
+ // looks for it in PLUGINS_DIR
+ m_filePath = QString("%1/%2").arg(PLUGINS_DIR).arg(m_fileName);
+
+ file.setFileName(m_filePath);
+
+ exists = file.exists();
+ }
+#endif
+
+#ifdef NL_LIB_PREFIX
+ if (!exists)
+ {
+ // if plugin can't be found in the same directory as spec file or PLUGINS_DIR,
+ // looks for it in NL_LIB_PREFIX
+ m_filePath = QString("%1/%2").arg(NL_LIB_PREFIX).arg(m_fileName);
+
+ file.setFileName(m_filePath);
+
+ exists = file.exists();
+ }
+#endif
+
+#endif
+
nlinfo(m_filePath.toStdString().c_str());
- QFile file(m_filePath);
- if (!file.exists())
+
+ if (!exists)
return reportError(QCoreApplication::translate("PluginSpec", "File does not exist: %1").arg(file.fileName()));
if (!file.open(QIODevice::ReadOnly))
return reportError(QCoreApplication::translate("PluginSpec", "Could not open file for read: %1").arg(file.fileName()));
@@ -391,4 +430,4 @@ bool PluginSpec::reportError(const QString &err)
return false;
}
-} // namespace ExtensionSystem
\ No newline at end of file
+} // namespace ExtensionSystem
From 0d4f383a7f5fc26967cfe2df693cdc4cf1950b8f Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 24 Sep 2012 14:02:33 +0200
Subject: [PATCH 018/125] Changed: Plugins specs and plugins installation
---
code/nel/tools/3d/object_viewer_qt/CMakeLists.txt | 11 +++++++++--
.../nel/tools/3d/object_viewer_qt/ovqt_config.h.cmake | 7 +++++++
.../src/extension_system/plugin_spec.cpp | 4 ++++
code/nel/tools/3d/object_viewer_qt/src/main.cpp | 6 +++++-
.../src/plugins/bnp_manager/CMakeLists.txt | 4 ++--
.../object_viewer_qt/src/plugins/core/CMakeLists.txt | 2 +-
.../src/plugins/disp_sheet_id/CMakeLists.txt | 4 ++--
.../src/plugins/example/CMakeLists.txt | 4 ++--
.../src/plugins/georges_editor/CMakeLists.txt | 4 ++--
.../src/plugins/landscape_editor/CMakeLists.txt | 4 ++--
.../object_viewer_qt/src/plugins/log/CMakeLists.txt | 4 ++--
.../src/plugins/mission_compiler/CMakeLists.txt | 4 ++--
.../src/plugins/object_viewer/CMakeLists.txt | 4 ++--
.../src/plugins/ovqt_sheet_builder/CMakeLists.txt | 4 ++--
.../src/plugins/translation_manager/CMakeLists.txt | 4 ++--
.../src/plugins/zone_painter/CMakeLists.txt | 4 ++--
16 files changed, 48 insertions(+), 26 deletions(-)
create mode 100644 code/nel/tools/3d/object_viewer_qt/ovqt_config.h.cmake
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index 41896e9c5..7ee463688 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -7,13 +7,20 @@
# This tells the application(s) where to find the installed data.
IF(WIN32)
+ SET(OVQT_PLUGIN_SPECS_DIR "plugins")
SET(OVQT_PLUGIN_DIR "plugins")
ELSEIF(APPLE)
# TODO: under Mac OS X, don't install but copy files in application package
+ SET(OVQT_PLUGIN_SPECS_DIR "plugins")
SET(OVQT_PLUGIN_DIR "plugins")
ELSE(WIN32)
- SET(OVQT_PLUGIN_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/plugins)
- ADD_DEFINITIONS(-DDATA_DIR="\\"${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt\\"" -DPLUGINS_DIR="\\"${NL_LIB_ABSOLUTE_PREFIX}/object_viewer_qt\\"")
+ SET(OVQT_PLUGIN_SPECS_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/plugins)
+ SET(OVQT_PLUGIN_DIR ${NL_LIB_PREFIX}/object_viewer_qt)
+
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/ovqt_config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/ovqt_config.h)
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
+
+ ADD_DEFINITIONS(-DHAVE_OVQT_CONFIG_H)
ENDIF(WIN32)
IF(UNIX AND WITH_STATIC)
diff --git a/code/nel/tools/3d/object_viewer_qt/ovqt_config.h.cmake b/code/nel/tools/3d/object_viewer_qt/ovqt_config.h.cmake
new file mode 100644
index 000000000..5b3a49654
--- /dev/null
+++ b/code/nel/tools/3d/object_viewer_qt/ovqt_config.h.cmake
@@ -0,0 +1,7 @@
+#ifndef OVQT_CONFIG_H
+#define OVQT_CONFIG_H
+
+#define DATA_DIR "${NL_SHARE_ABSOLUTE_PREFIX}/object_viewer_qt"
+#define PLUGINS_DIR "${NL_LIB_ABSOLUTE_PREFIX}/object_viewer_qt"
+
+#endif
diff --git a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
index f24cbcfb1..fea606af2 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/extension_system/plugin_spec.cpp
@@ -35,6 +35,10 @@
#include "config.h"
#endif
+#ifdef HAVE_OVQT_CONFIG_H
+#include "ovqt_config.h"
+#endif
+
namespace ExtensionSystem
{
const char *const PLUGIN_SPEC_NAME = "name";
diff --git a/code/nel/tools/3d/object_viewer_qt/src/main.cpp b/code/nel/tools/3d/object_viewer_qt/src/main.cpp
index fd5432a3c..ea78905fa 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/main.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/main.cpp
@@ -41,6 +41,10 @@
#include
#include
+#ifdef HAVE_OVQT_CONFIG_H
+#include "ovqt_config.h"
+#endif
+
static const char *appNameC = "ObjectViewerQt";
// nel_qt log file name
@@ -198,4 +202,4 @@ sint main(int argc, char **argv)
int result = app.exec();
return result;
-}
\ No newline at end of file
+}
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
index d3b1e745c..f1cc41b40 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
@@ -44,6 +44,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_bnp_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_bnp_manager.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_bnp_manager.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
index 7e36c6107..242a16262 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
@@ -56,5 +56,5 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_core)
ADD_DEFINITIONS(-DCORE_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_core.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_core.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
index f89042c7c..d22f4bb03 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
@@ -40,6 +40,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_disp_sheet_id)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_disp_sheet_id.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_disp_sheet_id.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
index c2496a2f8..6cdcd2138 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
@@ -38,6 +38,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_example)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_example.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_example.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
index a69af5a27..caeb6fc7d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
@@ -44,6 +44,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_georges_editor)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_georges_editor.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_georges_editor.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
index fc82afc8a..2e1ee0473 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
@@ -45,6 +45,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_landscape_editor)
ADD_DEFINITIONS(-DLANDSCAPE_EDITOR_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_landscape_editor.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_landscape_editor.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
index 0d9021cdb..22526259f 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
@@ -36,6 +36,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_log)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_log.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_log.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
index afd7b064a..44693552d 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
@@ -46,6 +46,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_mission_compiler)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_mission_compiler.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_mission_compiler.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
index 21349ebd5..0e2d84c71 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
@@ -163,6 +163,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_object_viewer.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_object_viewer.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
index bdaa3f4c9..5efc09bba 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
@@ -29,6 +29,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_sheet_builder)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_sheet_builder.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_sheet_builder.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
index 0bf25a16d..be5fefa54 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
@@ -48,6 +48,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_translation_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_translation_manager.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_translation_manager.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
index 8ccdd0286..bfc414832 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
@@ -42,6 +42,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_zone_painter)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_zone_painter.xml DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_zone_painter.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
From b858478e31a9c9941a67972203d424c0a6e0937a Mon Sep 17 00:00:00 2001
From: sfb
Date: Mon, 24 Sep 2012 08:18:46 -0500
Subject: [PATCH 019/125] Removed: #1378 Removed the reference implementation,
the full implementation is available at code/web/app and code/web/api.
---
.../tools/server/www/webig/app_hello.php | 29 --
code/ryzom/tools/server/www/webig/index.php | 133 ------
.../tools/server/www/webig/lib/config.php | 23 -
.../tools/server/www/webig/lib/functions.php | 394 ------------------
.../tools/server/www/webig/lib/pdr_util.php | 124 ------
.../www/webig/lib/pdr_util_character.php | 46 --
.../server/www/webig/lib/pdr_util_guild.php | 47 ---
7 files changed, 796 deletions(-)
delete mode 100644 code/ryzom/tools/server/www/webig/app_hello.php
delete mode 100644 code/ryzom/tools/server/www/webig/index.php
delete mode 100644 code/ryzom/tools/server/www/webig/lib/config.php
delete mode 100644 code/ryzom/tools/server/www/webig/lib/functions.php
delete mode 100644 code/ryzom/tools/server/www/webig/lib/pdr_util.php
delete mode 100644 code/ryzom/tools/server/www/webig/lib/pdr_util_character.php
delete mode 100644 code/ryzom/tools/server/www/webig/lib/pdr_util_guild.php
diff --git a/code/ryzom/tools/server/www/webig/app_hello.php b/code/ryzom/tools/server/www/webig/app_hello.php
deleted file mode 100644
index 0589d9ec2..000000000
--- a/code/ryzom/tools/server/www/webig/app_hello.php
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
- App Hello World!
-
-
- APP Hello World!
-
- index=(!isWEBIG ? '| logout' : '')?>
-
- Character
-
-
-
diff --git a/code/ryzom/tools/server/www/webig/index.php b/code/ryzom/tools/server/www/webig/index.php
deleted file mode 100644
index 57ddd7b55..000000000
--- a/code/ryzom/tools/server/www/webig/index.php
+++ /dev/null
@@ -1,133 +0,0 @@
-login error
';
- }
- echo '
-
-
- WebIG - Login
-
- Login
-
-
- ';
- exit;
-}
-
-// if this was login request from app, then redirect back there
-$redirect = is($_GET['redirect'], '');
-if(!empty($redirect)){
- header('Location: '.$redirect);
- exit;
-}
-
-// check user privileges
-$is_admin = webig_is_admin($user['cid']>>4);
-
-// get more info about character - race, civlization, cult, guild, etc
-$character = webig_load_character($user['cid']);
-
-// user is verified
-?>
-
-
- App Index
-
-
- Hello "=h($user['name'])?>"!
-
- index | Hello APP=(!isWEBIG ? '| logout' : '')?>
-
-User info';
-echo 'USER:'.dump_array($user);
-echo 'CHARACTER:'.dump_array($character);
-
- $__end = microtime(true);
- echo "\n---\npage created ".sprintf("%.5fsec", $__end - $__start).'
';
-
-?>
-
-
-
-
-
- ';
- $c=0;
- foreach($array as $k => $v){
- if(is_array($v)){
- $v = dump_array($v);
- }else{
- // make value safe for html
- $v = h($v);
- }
- echo '
-
- '.h($k).' | '.$v.' |
-
- ';
- $c++;
- }
- echo '
-
- |
-
- ';
-
- return ob_get_clean();
-}
-
-function display_teleport_list(){
- $places = array(
- 'Ranger Camp' => array(10314,-11734),
- 'Shining Lake' => array(9056, -10822),
- );
-?>
- Teleport destinations
-
-_pdo = new PDO('mysql:host='.$GLOBALS['DBHost'].';dbname='.$GLOBALS['DBName'].';charset=utf-8', $GLOBALS['DBUserName'], $GLOBALS['DBPassword'], array(PDO::MYSQL_ATTR_INIT_COMMAND => 'set names utf8'));
- $this->_pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- }
-
- public function getInstance(){
- static $instance = null;
- if($instance === null){
- $instance = new DB();
- }
- return $instance;
- }
-
- /**
- * @param string $sql
- * @param array $params (optional)
- * @return PDOStatement
- */
- function query($sql, $params=array()){
- if(empty($params)){
- $stmt = $this->_pdo->query($sql);
- }else{
- $stmt = $this->_pdo->prepare($sql);
- $stmt->execute($params);
- }
- return $stmt;
- }
-}
-
-/**
- * Verify and log-in user
- *
- * @return mixed user info array or boolean FALSE when user was not verified
- */
-function app_authenticate(){
- // mask possible double session_start() warning
- @session_start();
-
- if(isWEBIG){
- // ingame login
-
- // gather user from $_GET or $_POST variables
- $user = webig_user();
-
- // verify it against database
- $user = webig_auth($user);
- }else{
- // outgame login
-
- if(isset($_POST['login'])){
- // login request
- $shardid = is($_POST['login']['shardid'], '');
- $name = is($_POST['login']['name'], '');
- $passwd = is($_POST['login']['passwd'], '');
-
- // verify character and password against database and populate $_GET with user info
- $user = login_auth($shardid, $name, $passwd);
- $_SESSION['login']['error'] = ($user === false);
- }elseif(isset($_GET['logout'])){
- // logout request
- unset($_SESSION['user']);
- unset($_SESSION['authkey']);
-
- // redirect to self without URL parameters
- header('Location: '.$_SERVER['PHP_SELF']);
- exit;
- }else{
- // continue session
- $user = is($_SESSION['user'], false);
-
- // verify user in session against database (e.g. user might be deleted)
- $user = load_user($user['shardid'], null, $user['cid']);
- }
- }
-
- // auth failed?
- if(empty($user)){
- return false;
- }
-
- // remove values we do not need to keep in session
- unset($user['password']);
- unset($user['cookie']);
-
- // return user info array on success
- $_SESSION['user'] = $user;
- return $user;
-}
-
-// get user info that WebIG sends us
-function webig_user(){
- $user = array();
-
- // shard id (302)
- $user['shardid'] = ryzom_get_param('shardid');
-
- // character name (User)
- $user['name'] = ryzom_get_param('name');
-
- // character id (16), user id is calculated as 'uid = cid >> 4';
- $user['cid'] = ryzom_get_param('cid');
-
- // language
- $user['lang'] = ryzom_get_param('lang');
-
- $user['authkey'] = ryzom_get_param('authkey');
-
- return $user;
-}
-
-/**
- * Verify character using info from ig browser
- *
- * @param array $user
- * @return bool return user info array on success and FALSE on error
- */
-function webig_auth($user){
- // find user by shard and character id (name might be temporarily changed in game)
- $result = load_user($user['shardid'], null, $user['cid']);
- if(empty($result)){
- // should not happen, but user was not found
- return false;
- }
-
- // Create auth key by using cookie from DB and user info from user
- $authkey = webig_create_authkey($user, $result['cookie']);
- if($user['authkey'] !== $authkey){
- // something is out of sync - either user info or cookie
- return false;
- }
-
- // return result from DB
- return $result;
-}
-
-/**
- * Verify character
- *
- * @param int $shardid character shard id
- * @param string $name character name
- * @param string $passwd plain text password
- * @return mixed return user info array on success or boolean false on error
- */
-function login_auth($shardid, $name, $passwd){
- // get character from db
- $user = load_user($shardid, $name);
- if(empty($user)){
- // user was not found
- return false;
- }
-
- $passwd = crypt($passwd, substr($user['password'], 0, 2));
- if($passwd !== $user['password']){
- // password failed
- return false;
- }
-
- return $user;
-}
-
-/**
- * Fetch user info from db
- *
- * If name is NULL, then $cid is used
- *
- * @param int $shardid
- * @param string $name
- * @param int $cid
- * @return array
- */
-function load_user($shardid, $name, $cid = null){
- // `nel`.`user` has password
- // `ring_open`.`ring_users` has cookie
- // `ring_open`.`characters` has char_id, char_name, home_mainland_session_id(==shardid)
-
- $sql = 'SELECT c.`char_id` cid, c.`char_name` name, c.`home_mainland_session_id` shardid, n.`password`, u.`cookie`
- FROM `ring_open`.`characters` c
- JOIN `ring_open`.`ring_users` u on u.`user_id` = c.`user_id`
- JOIN `nel`.`user` n on n.`uid` = c.`user_id`
- WHERE c.`home_mainland_session_id` = :shardid';
- $params = array('shardid' => $shardid);
- if($name !== null){
- $sql .= ' AND c.`char_name` = :name';
- $params['name'] = $name;
- }elseif($cid !== null){
- $sql .= ' AND c.`char_id` = :cid';
- $params['cid'] = $cid;
- }else{
- // $name or $cid both empty
- return false;
- }
-
- $result = DB::getInstance()->query($sql, $params)->fetch(PDO::FETCH_ASSOC);
- return $result;
-}
-
-/**
- * Verify user info that ig browser sent us using cookie from database
- *
- * @param array $user user info array
- * @param string $cookie User login cookie from database
- * @return string md5 hash
- */
-function webig_create_authkey($user, $cookie){
- return md5($user['shardid'].$user['name'].$user['cid'].'\''.$cookie.'\'');
-}
-
-/**
- * Return user privileges from DB
- *
- * @param int $uid user id (uid = cid >> 4)
- * @return mixed array of user privileges or boolean FALSE when user was not found
- */
-function webig_get_privileges($uid){
- $sql = 'select `privilege` from `nel`.`user` where `uid` = :id';
- $params = array('id' => $uid);
-
- $result = DB::getInstance()->query($sql, $params)->fetchColumn(0);
-
- if($result !== false){
- $result = explode(':', $result);
- $ret = array();
- foreach($result as $k=>$v){
- if($v != ''){
- $ret[]=$v;
- }
- }
- $result = $ret;
- }
-
- return $result;
-}
-
-/**
- * Test user privileges
- *
- * @param int $uid user id
- * @param array $priv array of privileges, like array('DEV', 'GM')
- * @return bool
- */
-function webig_has_privileges($uid, $priv){
- $userpriv = webig_get_privileges($uid);
- $result = array_intersect($priv, $userpriv);
- return !empty($result);
-}
-
-/**
- * Test user privileges against (DEV, SGM, GM)
- *
- * @param int $uid user id
- * @return bool
- */
-function webig_is_admin($uid){
- // entities_game_service/player_manager/player_manager.cpp defines order
- // DEV > SGM > EM > GM > EG > VG > SG > G > OBSERVER > PR
- return webig_has_privileges($uid, array('DEV', 'SGM', 'EM', 'GM'));
-}
-
-/**
- * Load character from shard save binary file
- *
- * @param int $cid
- * @return mixed array with character info or boolean FALSE on error
- */
-function webig_load_character($cid){
- $pdr = CharacterPdr::createDefault();
- $char = $pdr->load($cid);
- if(empty($char)){
- return false;
- }
-
- $result = array(
- 'id' => (int) $cid,
- 'name' => (string) $char->EntityBase->_Name['value'],
- 'title' => (string) $char->_Title['value'],
- 'race' => (string) $char->EntityBase->_Race['value'],
- 'gender' => (int) $char->EntityBase->_Gender['value'] == '0' ? 'male' : 'female',
- 'cult' => (string) $char->DeclaredCult['value'],
- 'civ' => (string) $char->DeclaredCiv['value'],
- 'guild' => false,
- );
-
- $guild_id = (int) $char->_GuildId['value'];
- if($guild_id>0){
- // if char is in guild, then also get guild info
- $result['guild'] = webig_load_guild($guild_id);
-
- // get guild rank (also from guild file)
- $result['guild_membership'] = webig_load_guild_membership($guild_id, $cid);
- }
- unset($char);
-
- return $result;
-}
-
-/**
- * Load basic guild info (name, description, motd, culv, civ)
- *
- * @param int $guild_id
- * @return mixed array with guild info or boolean FALSE on error
- */
-function webig_load_guild($guild_id){
- $pdr = GuildPdr::createDefault();
- $guild = $pdr->load($guild_id);
- if(empty($guild)){
- return false;
- }
-
- $result = array(
- 'id' => (int) $guild_id,
- 'icon' => (string) $guild->Icon['value'],
- 'name' => (string) $guild->_Name['value'],
- 'description' => (string) $guild->_Description['value'],
- 'motd' => (string) $guild->_MessageOfTheDay['value'],
- 'cult' => (string) $guild->DeclaredCult['value'],
- 'civ' => (string) $guild->DeclaredCiv['value'],
- );
- unset($guild);
-
- return $result;
-}
-
-/**
- * Load guild member info
- *
- * @param int $guild_id
- * @param int $char_id
- * @return mixed array with guild member info or boolean FALSE if guild or character not found
- */
-function webig_load_guild_membership($guild_id, $char_id){
- $pdr = GuildPdr::createDefault();
- $guild = $pdr->load($guild_id);
- if(empty($guild)){
- return false;
- }
-
- $result = false;
-
- // test for 'id' and type (CHAR == 0), ignore creator (should be 0x00) and dynamic
- // 0x0000000013:00:00:87
- $eid = sprintf('0x%010x:00:', $char_id);
- $i = 0;
- while(isset($guild->Members->__Key__[$i])){
- $key = $guild->Members->__Key__[$i];
- $pos = strpos((string)$key['value'], $eid);
- if($pos === 1){
- $val = $guild->Members->__Val__[$i];
- $result = array(
- 'grade' => (string) $val->Members->Grade['value'],
- 'joined' => (int) $val->Members->EnterTime['value'],
- );
- break;
- }
- $i++;
- }
- unset($guild);
-
- return $result;
-}
-
-// shortcut for 'isset() ? .. : ..'
-function is(&$var, $default = null){
- return isset($var) ? $var : $default;
-}
-
-// escape string so it's safe for HTML
-function h($str){
- return htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
-}
-
-// return $_GET[var] or $_POST[var] or $default
-function ryzom_get_param($var, $default=''){
- return is($_GET[$var], is($_POST[$var], $default));
-}
\ No newline at end of file
diff --git a/code/ryzom/tools/server/www/webig/lib/pdr_util.php b/code/ryzom/tools/server/www/webig/lib/pdr_util.php
deleted file mode 100644
index 1e28124a8..000000000
--- a/code/ryzom/tools/server/www/webig/lib/pdr_util.php
+++ /dev/null
@@ -1,124 +0,0 @@
-_shard_save = $shard_save;
- $this->_sheetid_dir = $sheetid_dir;
-
- $this->_unpack_dir = $unpack;
- }
-
- function setShardSaveDirectory($dir){
- $this->_shard_save = $dir;
- }
- function getShardSaveDirectory(){
- return $this->_shard_save;
- }
-
- function setSheetIdDirectory($dir){
- $this->_sheetid_dir = $dir;
- }
- function getSheetIdDirectory(){
- return $this->_sheetid_dir;
- }
-
- function setUnpackDirectory($dir){
- $this->_unpack_dir = $dir;
- }
- function getUnpackDirectory(){
- return $this->_unpack_dir;
- }
-
- /**
- * Extract $pdr file to $xml file
- *
- * @param string $pdr
- * @param string $xml
- * @return bool
- */
- function extract($pdr, $xml){
- if(!file_exists($pdr)){
- return false;
- }
-
- $pdr_mtime = filemtime($pdr);
- if(file_exists($xml)){
- $xml_mtime = filemtime($xml);
- }else{
- $xml_mtime = 0;
- }
-
- $diff = $pdr_mtime - $xml_mtime;
- if($diff > self::CACHE_MIN_TIME){
- // remove expired xml file
- @unlink($xml);
-
- // change working directory to unpack directory to keep pdr_util log file in one place
- $pwd = getcwd();
- chdir($this->_unpack_dir);
-
- // run pdr_util
- $cmd = sprintf(' -s%s -x -o%s %s', $this->_sheetid_dir, $xml, $pdr);
- exec(CMD_PDR_UTIL.' '.$cmd);
-
- // change working directory back what it was before
- chdir($pwd);
- }
-
- // if pdr_util failed, then there is no xml file
- return file_exists($xml);
- }
-
- /**
- * @param string $fname
- * @return string ShardSaveDirectory + fname
- */
- function getSaveFileName($fname){
- return $this->getShardSaveDirectory().'/'.$fname;
- }
-
- /**
- * @param string $fname
- * return string TempDirectory + $fname
- */
- function getXmlFileName($fname){
- return $this->getUnpackDirectory().'/'.$fname;
- }
-
-}
-
diff --git a/code/ryzom/tools/server/www/webig/lib/pdr_util_character.php b/code/ryzom/tools/server/www/webig/lib/pdr_util_character.php
deleted file mode 100644
index 7e2d689ce..000000000
--- a/code/ryzom/tools/server/www/webig/lib/pdr_util_character.php
+++ /dev/null
@@ -1,46 +0,0 @@
-getSaveFileName($char_id >> 4, $char_id & 0x0F);
- $xml_file = $this->getXmlFileName($char_id);
-
- if($this->extract($char_save, $xml_file)){
- return simplexml_load_file($xml_file);
- }
-
- // extract failed
- return false;
- }
-
- /**
- * @param int $uid user id
- * @param int $slot character slot, starting from 0
- * @return string character save path + filename
- */
- function getSaveFileName($uid, $slot){
- return parent::getSaveFileName(sprintf('characters/%03d/account_%d_%d_pdr.bin', $uid, $uid, $slot));
- }
-
- /**
- * @param $char_id
- * return string character xml file in unpack directory
- */
- function getXmlFileName($char_id){
- return parent::getXmlFileName(sprintf('character_%d.xml', $char_id));
- }
-}
diff --git a/code/ryzom/tools/server/www/webig/lib/pdr_util_guild.php b/code/ryzom/tools/server/www/webig/lib/pdr_util_guild.php
deleted file mode 100644
index 54249f781..000000000
--- a/code/ryzom/tools/server/www/webig/lib/pdr_util_guild.php
+++ /dev/null
@@ -1,47 +0,0 @@
-getSaveFileName($guild_id);
- $xml_file = $this->getXmlFileName($guild_id);
-
- if($this->extract($guild_save, $xml_file)){
- return simplexml_load_file($xml_file);
- }
-
- // extract failed
- return false;
- }
-
- /**
- * @param int $guild_id
- * @return string full path to guild binary file
- */
- function getSaveFileName($guild_id){
- // chop off shard component from guild id
- return parent::getSaveFileName(sprintf('guilds/guild_%05d.bin', $guild_id & 0xFFFFF));
- }
-
- /**
- * @param $guild_id
- * return string full path to extracted guild xml file
- */
- function getXmlFileName($guild_id){
- return parent::getXmlFileName(sprintf('guild_%d.xml', $guild_id));
- }
-}
-
From fc8c26ff9f7fa8da3b9d6ae0ebcc55b4751734c1 Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 25 Sep 2012 12:19:13 +0200
Subject: [PATCH 020/125] Fixed: #1254 Error while compiling with current
stable squish
---
code/CMakeModules/FindSquish.cmake | 7 ++++++-
code/nel/tools/3d/CMakeLists.txt | 1 +
code/nel/tools/3d/hls_bank_maker/CMakeLists.txt | 6 ++----
code/nel/tools/3d/panoply_maker/CMakeLists.txt | 6 ++----
.../tools/3d/s3tc_compressor_lib/CMakeLists.txt | 16 ++++++++++++++++
.../3d/s3tc_compressor_lib/s3tc_compressor.cpp | 4 ++++
code/nel/tools/3d/tga_2_dds/CMakeLists.txt | 6 ++----
7 files changed, 33 insertions(+), 13 deletions(-)
create mode 100644 code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
diff --git a/code/CMakeModules/FindSquish.cmake b/code/CMakeModules/FindSquish.cmake
index 04f657485..ad0f7ce80 100644
--- a/code/CMakeModules/FindSquish.cmake
+++ b/code/CMakeModules/FindSquish.cmake
@@ -12,7 +12,7 @@ IF(SQUISH_LIBRARIES AND SQUISH_INCLUDE_DIR)
SET(SQUISH_FIND_QUIETLY TRUE)
ENDIF(SQUISH_LIBRARIES AND SQUISH_INCLUDE_DIR)
-FIND_PATH(SQUISH_INCLUDE_DIR
+FIND_PATH(SQUISH_INCLUDE_DIR
squish.h
PATHS
/usr/local/include
@@ -67,6 +67,11 @@ IF(SQUISH_FOUND)
IF(NOT SQUISH_FIND_QUIETLY)
MESSAGE(STATUS "Found Squish: ${SQUISH_LIBRARIES}")
ENDIF(NOT SQUISH_FIND_QUIETLY)
+ FILE(STRINGS ${SQUISH_INCLUDE_DIR}/squish.h METRIC REGEX "metric = 0")
+ IF(METRIC)
+ SET(SQUISH_COMPRESS_HAS_METRIC ON)
+ SET(SQUISH_DEFINITIONS -DSQUISH_COMPRESS_HAS_METRIC)
+ ENDIF(METRIC)
ELSE(SQUISH_FOUND)
IF(NOT SQUISH_FIND_QUIETLY)
MESSAGE(STATUS "Warning: Unable to find Squish!")
diff --git a/code/nel/tools/3d/CMakeLists.txt b/code/nel/tools/3d/CMakeLists.txt
index 2d8c4a03a..58360aec0 100644
--- a/code/nel/tools/3d/CMakeLists.txt
+++ b/code/nel/tools/3d/CMakeLists.txt
@@ -51,6 +51,7 @@ IF(WITH_QT)
ENDIF(WITH_QT)
IF(SQUISH_FOUND)
+ ADD_SUBDIRECTORY(s3tc_compressor_lib)
ADD_SUBDIRECTORY(panoply_maker)
ADD_SUBDIRECTORY(tga_2_dds)
ADD_SUBDIRECTORY(hls_bank_maker)
diff --git a/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt b/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
index 4b4717087..5b3189b2d 100644
--- a/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
+++ b/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
@@ -1,10 +1,8 @@
-FILE(GLOB SRC *.cpp *.h ../panoply_maker/hls_bank_texture_info.cpp ../panoply_maker/hls_bank_texture_info.h ../s3tc_compressor_lib/*.cpp ../s3tc_compressor_lib/*.h)
+FILE(GLOB SRC *.cpp *.h ../panoply_maker/hls_bank_texture_info.cpp ../panoply_maker/hls_bank_texture_info.h)
ADD_EXECUTABLE(hls_bank_maker ${SRC})
-INCLUDE_DIRECTORIES(${SQUISH_INCLUDE_DIR})
-
-TARGET_LINK_LIBRARIES(hls_bank_maker ${SQUISH_LIBRARIES} nelmisc nel3d)
+TARGET_LINK_LIBRARIES(hls_bank_maker s3tc_compressor nelmisc nel3d)
NL_DEFAULT_PROPS(hls_bank_maker "NeL, Tools, 3D: hls_bank_maker")
NL_ADD_RUNTIME_FLAGS(hls_bank_maker)
diff --git a/code/nel/tools/3d/panoply_maker/CMakeLists.txt b/code/nel/tools/3d/panoply_maker/CMakeLists.txt
index 4a39ab154..2b17b4877 100644
--- a/code/nel/tools/3d/panoply_maker/CMakeLists.txt
+++ b/code/nel/tools/3d/panoply_maker/CMakeLists.txt
@@ -1,10 +1,8 @@
-FILE(GLOB SRC *.cpp *.h ../s3tc_compressor_lib/*.h ../s3tc_compressor_lib/*.cpp)
+FILE(GLOB SRC *.cpp *.h)
ADD_EXECUTABLE(panoply_maker ${SRC})
-INCLUDE_DIRECTORIES(${SQUISH_INCLUDE_DIR})
-
-TARGET_LINK_LIBRARIES(panoply_maker ${SQUISH_LIBRARIES} nelmisc nel3d)
+TARGET_LINK_LIBRARIES(panoply_maker s3tc_compressor nelmisc nel3d)
NL_DEFAULT_PROPS(panoply_maker "NeL, Tools, 3D: panoply_maker")
NL_ADD_RUNTIME_FLAGS(panoply_maker)
diff --git a/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt b/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
new file mode 100644
index 000000000..e40b5abf8
--- /dev/null
+++ b/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
@@ -0,0 +1,16 @@
+FILE(GLOB SRC *.cpp)
+FILE(GLOB HEADER *.h)
+
+INCLUDE_DIRECTORIES(${SQUISH_INCLUDE_DIR})
+
+NL_TARGET_LIB(s3tc_compressor ${SRC} ${HEADER})
+
+TARGET_LINK_LIBRARIES(s3tc_compressor ${SQUISH_LIBRARIES})
+NL_DEFAULT_PROPS(s3tc_compressor "NeL, Tools, 3D: S3TC Compressor Library")
+NL_ADD_RUNTIME_FLAGS(s3tc_compressor)
+
+ADD_DEFINITIONS(${SQUISH_DEFINITIONS})
+
+IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
+ INSTALL(TARGETS s3tc_compressor LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/tools/3d/s3tc_compressor_lib/s3tc_compressor.cpp b/code/nel/tools/3d/s3tc_compressor_lib/s3tc_compressor.cpp
index f714dcd6d..6423f77f2 100644
--- a/code/nel/tools/3d/s3tc_compressor_lib/s3tc_compressor.cpp
+++ b/code/nel/tools/3d/s3tc_compressor_lib/s3tc_compressor.cpp
@@ -60,8 +60,12 @@ static void compressMipMap(uint8 *pixSrc, sint width, sint height, vector
Date: Tue, 25 Sep 2012 12:33:02 +0200
Subject: [PATCH 021/125] Changed: #825 Remove all warnings when compiling
Ryzom
---
code/CMakeModules/nel.cmake | 4 +-
code/nel/include/nel/misc/eval_num_expr.h | 2 +-
code/nel/include/nel/net/message_recorder.h | 2 +-
code/nel/src/3d/tangent_space_build.cpp | 6 +-
code/nel/src/misc/eval_num_expr.cpp | 2 +-
code/nel/src/misc/i18n.cpp | 6 +-
code/nel/src/misc/time_nl.cpp | 6 +
.../tools/3d/tile_edit_qt/browser_model.cpp | 17 ++-
code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c | 2 +-
.../tools/3d/tile_edit_qt/pic/Pic_Manage.c | 2 +-
code/nel/tools/3d/tile_edit_qt/pic/pic.h | 2 +-
.../tools/3d/tile_edit_qt/pic/pic_private.h | 140 +++++++++---------
code/ryzom/client/src/character_cl.cpp | 2 +-
code/ryzom/client/src/init.cpp | 3 +-
.../src/interface_v3/action_handler_help.cpp | 4 +-
.../interface_v3/animal_position_state.cpp | 2 +-
.../src/interface_v3/brick_learned_callback.h | 1 +
.../client/src/interface_v3/chat_window.h | 2 +-
.../client/src/interface_v3/group_html.cpp | 4 +-
.../client/src/interface_v3/group_menu.cpp | 2 +-
.../client/src/interface_v3/interface_anim.h | 4 +-
.../src/interface_v3/interface_expr.cpp | 4 +-
.../src/interface_v3/interface_manager.h | 1 +
code/ryzom/client/src/r2/dmc/dmc.h | 2 +-
code/ryzom/common/src/game_share/ai_wrapper.h | 4 +
code/ryzom/tools/assoc_mem/field.h | 2 +-
code/ryzom/tools/assoc_mem/node.h | 2 +-
code/ryzom/tools/assoc_mem/record.h | 2 +-
.../src/georgesform_model.cpp | 2 +
.../src/georgesform_proxy_model.cpp | 2 +
.../translation_tools/extract_bot_names.cpp | 4 +-
31 files changed, 135 insertions(+), 105 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 0c784786f..fb7ff9a3f 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -527,7 +527,7 @@ MACRO(NL_SETUP_BUILD)
ENDIF(HOST_CPU STREQUAL "x86" AND TARGET_CPU STREQUAL "x86_64")
ENDIF(APPLE)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -D_REENTRANT -pipe -ftemplate-depth-48 -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
+ SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -D_REENTRANT -pipe -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
IF(NOT ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -ansi")
@@ -581,7 +581,7 @@ MACRO(NL_SETUP_BUILD)
SET(PLATFORM_CFLAGS "-fPIC ${PLATFORM_CFLAGS}")
ENDIF(TARGET_X64 AND WITH_STATIC AND NOT WITH_STATIC_DRIVERS)
- SET(PLATFORM_CXXFLAGS ${PLATFORM_CFLAGS})
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CFLAGS} -ftemplate-depth-48")
IF(NOT APPLE)
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,--no-undefined -Wl,--as-needed")
diff --git a/code/nel/include/nel/misc/eval_num_expr.h b/code/nel/include/nel/misc/eval_num_expr.h
index 18cb14725..8551e49df 100644
--- a/code/nel/include/nel/misc/eval_num_expr.h
+++ b/code/nel/include/nel/misc/eval_num_expr.h
@@ -241,7 +241,7 @@ private:
LogicalXor, // ^^
OperatorCount, //
NotOperator, // This is not an operator
- ExtOperator, // This is a 2 charcters operator
+ ExtOperator, // This is a 2 characters operator
};
// Functions
diff --git a/code/nel/include/nel/net/message_recorder.h b/code/nel/include/nel/net/message_recorder.h
index a7b5ac51f..5874aca4c 100644
--- a/code/nel/include/nel/net/message_recorder.h
+++ b/code/nel/include/nel/net/message_recorder.h
@@ -79,7 +79,7 @@ struct TMessageRecord
stream.serial( s_event );
uint32 sockId;
stream.serialHex( sockId );
- SockId = (NLNET::TSockId)sockId;
+ SockId = (NLNET::TSockId)(size_t)sockId;
len = Message.length();
stream.serial( len );
stream.serialBuffer( const_cast(Message.buffer()), len ); // assumes the message contains plain text
diff --git a/code/nel/src/3d/tangent_space_build.cpp b/code/nel/src/3d/tangent_space_build.cpp
index 17e106615..8a1b1100a 100644
--- a/code/nel/src/3d/tangent_space_build.cpp
+++ b/code/nel/src/3d/tangent_space_build.cpp
@@ -214,9 +214,9 @@ bool BuildTangentSpace(CMesh::CMeshBuild &outMeshBuild, const CMesh::CMeshBuild
if (!canShare) continue;
// Get indices of vertices of current tri
- const uint indices[] = { f.Corner[0].Vertex,
- f.Corner[1].Vertex,
- f.Corner[2].Vertex };
+ const uint indices[] = { (uint)f.Corner[0].Vertex,
+ (uint)f.Corner[1].Vertex,
+ (uint)f.Corner[2].Vertex };
NLMISC::CTriangle tri;
// Build it
BuildTriFromMB(outMeshBuild, indices, tri);
diff --git a/code/nel/src/misc/eval_num_expr.cpp b/code/nel/src/misc/eval_num_expr.cpp
index cf543c260..de7f3b2bf 100644
--- a/code/nel/src/misc/eval_num_expr.cpp
+++ b/code/nel/src/misc/eval_num_expr.cpp
@@ -1309,7 +1309,7 @@ const int CEvalNumExpr::_OperatorPrecedence[]=
9, // LogicalAnd
10, // LogicalOr
11, // LogicalXor
- 0xffffffff, // OperatorCount
+ -1, // OperatorCount
20, // NotOperator
};
diff --git a/code/nel/src/misc/i18n.cpp b/code/nel/src/misc/i18n.cpp
index 92da17250..c68b190c5 100644
--- a/code/nel/src/misc/i18n.cpp
+++ b/code/nel/src/misc/i18n.cpp
@@ -914,9 +914,9 @@ void CI18N::_readTextFile(const string &filename,
void CI18N::readTextBuffer(uint8 *buffer, uint size, ucstring &result, bool forceUtf8)
{
- static uint8 utf16Header[] = {char(0xff), char(0xfe)};
- static uint8 utf16RevHeader[] = {char(0xfe), char(0xff)};
- static uint8 utf8Header[] = {char(0xef), char(0xbb), char(0xbf)};
+ static uint8 utf16Header[] = { 0xffu, 0xfeu };
+ static uint8 utf16RevHeader[] = { 0xfeu, 0xffu };
+ static uint8 utf8Header[] = { 0xefu, 0xbbu, 0xbfu };
if (forceUtf8)
{
diff --git a/code/nel/src/misc/time_nl.cpp b/code/nel/src/misc/time_nl.cpp
index dd43fd2f7..422ba192f 100644
--- a/code/nel/src/misc/time_nl.cpp
+++ b/code/nel/src/misc/time_nl.cpp
@@ -280,11 +280,17 @@ void CTime::probeTimerInfo(CTime::CTimerInfo &result)
else result.RequiresSingleCore = false;
if (result.HighPrecisionResolution == 14318180)
+ {
nldebug("Detected known HPET era timer frequency");
+ }
if (result.HighPrecisionResolution == 3579545)
+ {
nldebug("Detected known AHCI era timer frequency");
+ }
if (result.HighPrecisionResolution == 1193182)
+ {
nldebug("Detected known i8253/i8254 era timer frequency");
+ }
}
}
diff --git a/code/nel/tools/3d/tile_edit_qt/browser_model.cpp b/code/nel/tools/3d/tile_edit_qt/browser_model.cpp
index 8b8e4ae75..6b22e2f8e 100644
--- a/code/nel/tools/3d/tile_edit_qt/browser_model.cpp
+++ b/code/nel/tools/3d/tile_edit_qt/browser_model.cpp
@@ -317,6 +317,8 @@ bool TileList::setTile128 (int tile, const std::string& name, NL3D::CTile::TBitm
case CTile::alpha:
theList128[tile].alphaLoaded=0;
break;
+ default:
+ break;
}
Reload(tile, tile + 1, _128x128);
}
@@ -378,6 +380,8 @@ bool TileList::setTile256 (int tile, const std::string& name, NL3D::CTile::TBitm
case CTile::alpha:
theList256[tile].alphaLoaded=0;
break;
+ default:
+ break;
}
Reload(tile, tile + 1, _256x256);
}
@@ -442,6 +446,8 @@ bool TileList::setTileTransition (int tile, const std::string& name, NL3D::CTile
case CTile::alpha:
theListTransition[tile].alphaLoaded=0;
break;
+ default:
+ break;
}
Reload(tile, tile + 1, Transition);
}
@@ -603,6 +609,8 @@ void TileList::clearTile128 (int index, CTile::TBitmap bitmap)
case CTile::alpha:
nlassert(0);
break;
+ default:
+ break;
}
tileBankBrowser.getTileSet (_tileSet)->clearTile128 (index, bitmap, tileBankBrowser);
}
@@ -622,6 +630,8 @@ void TileList::clearTile256 (int index, CTile::TBitmap bitmap)
case CTile::alpha:
nlassert(0);
break;
+ default:
+ break;
}
tileBankBrowser.getTileSet (_tileSet)->clearTile256 (index, bitmap, tileBankBrowser);
}
@@ -642,6 +652,8 @@ void TileList::clearTransition (int index, CTile::TBitmap bitmap)
theListTransition[index].alphaLoaded=0;
theListTransition[index].alphaBits.resize(0);
break;
+ default:
+ break;
}
tileBankBrowser.getTileSet (_tileSet)->clearTransition ((CTileSet::TTransition)index, bitmap, tileBankBrowser);
}
@@ -660,6 +672,8 @@ void TileList::clearDisplacement (int index, CTile::TBitmap bitmap)
case CTile::alpha:
nlassert(0);
break;
+ default:
+ break;
}
tileBankBrowser.getTileSet (_tileSet)->clearDisplacement ((CTileSet::TDisplacement)index, tileBankBrowser);
@@ -717,7 +731,8 @@ void TileList::Reload(int first, int last, TileType n) //recharge en memoire une
theList[n][i].Load (index, NULL);
break;
}
-
+ default:
+ break;
}
}
}
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c b/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
index 332ee1b0d..53dc957f5 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
@@ -31,7 +31,7 @@ typedef struct BMP_HEADER
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_BMP_Write( unsigned char *FileName,
+unsigned long Pic_BMP_Write( const char *FileName,
unsigned char *pPal,unsigned char *pDatas,
unsigned long w, unsigned long h, unsigned long d)
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/Pic_Manage.c b/code/nel/tools/3d/tile_edit_qt/pic/Pic_Manage.c
index 6efaf0f03..ccc8cdc12 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/Pic_Manage.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/Pic_Manage.c
@@ -504,7 +504,7 @@ static char* ConvPic(PIC_PICTURE *pic, unsigned long type, char* pErr)
/* ---------------------------------------- */
-unsigned long PIC_Save(unsigned long id, char* FileName, unsigned long type, unsigned long qual)
+unsigned long PIC_Save(unsigned long id, const char* FileName, unsigned long type, unsigned long qual)
{
PIC_PICTURE *pic;
unsigned char err;
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/pic.h b/code/nel/tools/3d/tile_edit_qt/pic/pic.h
index 761073552..cec5a0ff0 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/pic.h
+++ b/code/nel/tools/3d/tile_edit_qt/pic/pic.h
@@ -22,7 +22,7 @@ extern unsigned long PIC_Load(char* FileName, unsigned char Quantize);
extern unsigned long PIC_Create(unsigned char* pPal, unsigned char* pDatas, unsigned long w, unsigned long h, unsigned long d);
-extern unsigned long PIC_Save(unsigned long id, char* FileName, unsigned long type, unsigned long qual);
+extern unsigned long PIC_Save(unsigned long id, const char* FileName, unsigned long type, unsigned long qual);
extern unsigned long PIC_GetInfos( unsigned long id,
unsigned char* *ppPal, unsigned char* *ppDatas,
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h b/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
index 2ecd984b7..53166396d 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
+++ b/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
@@ -1,71 +1,71 @@
-#ifndef _PIC_PRIVATE_H_
-#define _PIC_PRIVATE_H_
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* ---------------------------------------------------------------------------------------------------------------------------------- */
-
-typedef struct PIC_PICTURE
-{
- unsigned long ID;
- unsigned long Width;
- unsigned long Height;
- unsigned long Depth;
- unsigned char *pDatas;
- unsigned char *pPal;
- struct PIC_PICTURE *Next;
-} PIC_PICTURE;
-
-/* ---------------------------------------------------------------------------------------------------------------------------------- */
-
-
-/*
- * JPG
- */
-
-
-extern unsigned long Pic_JPG_Read( unsigned char *FileName,
- unsigned char **ppPal, unsigned char **ppDatas,
- unsigned long *w, unsigned long *h);
-
-extern unsigned long Pic_JPG_Write( unsigned char *FileName,
- unsigned long Qual,
- unsigned char *pDatas,
- unsigned long w, unsigned long h);
-/*
- * TGA
- */
-extern unsigned long Pic_TGA_Read( unsigned char *FileName,
- unsigned char **ppPal, unsigned char **ppDatas,
- unsigned long *pWidth, unsigned long *pHeight,
- unsigned long *pDepth);
-extern unsigned long Pic_TGA_Write( unsigned char *FileName,
- unsigned char *pPal,unsigned char *pDatas,
- unsigned long w, unsigned long h, unsigned long d);
-/*
- * BMP
- */
-extern unsigned long Pic_BMP_Read( unsigned char *FileName,
- unsigned char **ppPal, unsigned char **ppDatas,
- unsigned long *pWidth, unsigned long *pHeight,
- unsigned long *pDepth);
-
-extern unsigned long Pic_BMP_Write( unsigned char *FileName,
- unsigned char *pPal,unsigned char *pDatas,
- unsigned long w, unsigned long h, unsigned long d);
-/*
- * System
- */
-extern void* Pic_malloc(unsigned long size);
-extern void* Pic_calloc(unsigned long count, unsigned long size);
-extern void Pic_free(void *memblock);
-extern unsigned long Pic__msize(void *memblock);
-extern void Pic_SetError(unsigned char *msg, ...);
-
-/* ---------------------------------------------------------------------------------------------------------------------------------- */
-
-#ifdef __cplusplus
-}
-#endif
+#ifndef _PIC_PRIVATE_H_
+#define _PIC_PRIVATE_H_
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct PIC_PICTURE
+{
+ unsigned long ID;
+ unsigned long Width;
+ unsigned long Height;
+ unsigned long Depth;
+ unsigned char *pDatas;
+ unsigned char *pPal;
+ struct PIC_PICTURE *Next;
+} PIC_PICTURE;
+
+/* ---------------------------------------------------------------------------------------------------------------------------------- */
+
+
+/*
+ * JPG
+ */
+
+
+extern unsigned long Pic_JPG_Read( unsigned char *FileName,
+ unsigned char **ppPal, unsigned char **ppDatas,
+ unsigned long *w, unsigned long *h);
+
+extern unsigned long Pic_JPG_Write( unsigned char *FileName,
+ unsigned long Qual,
+ unsigned char *pDatas,
+ unsigned long w, unsigned long h);
+/*
+ * TGA
+ */
+extern unsigned long Pic_TGA_Read( unsigned char *FileName,
+ unsigned char **ppPal, unsigned char **ppDatas,
+ unsigned long *pWidth, unsigned long *pHeight,
+ unsigned long *pDepth);
+extern unsigned long Pic_TGA_Write( unsigned char *FileName,
+ unsigned char *pPal,unsigned char *pDatas,
+ unsigned long w, unsigned long h, unsigned long d);
+/*
+ * BMP
+ */
+extern unsigned long Pic_BMP_Read( unsigned char *FileName,
+ unsigned char **ppPal, unsigned char **ppDatas,
+ unsigned long *pWidth, unsigned long *pHeight,
+ unsigned long *pDepth);
+
+extern unsigned long Pic_BMP_Write( const char *FileName,
+ unsigned char *pPal,unsigned char *pDatas,
+ unsigned long w, unsigned long h, unsigned long d);
+/*
+ * System
+ */
+extern void* Pic_malloc(unsigned long size);
+extern void* Pic_calloc(unsigned long count, unsigned long size);
+extern void Pic_free(void *memblock);
+extern unsigned long Pic__msize(void *memblock);
+extern void Pic_SetError(unsigned char *msg, ...);
+
+/* ---------------------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef __cplusplus
+}
+#endif
#endif
diff --git a/code/ryzom/client/src/character_cl.cpp b/code/ryzom/client/src/character_cl.cpp
index 435698226..2f947e198 100644
--- a/code/ryzom/client/src/character_cl.cpp
+++ b/code/ryzom/client/src/character_cl.cpp
@@ -4522,7 +4522,7 @@ void CCharacterCL::applyBehaviourFlyingHPs(const CBehaviourContext &bc, const MB
{
if(behaviour.DeltaHP != 0)
{
- CRGBA deltaHPColor;
+ CRGBA deltaHPColor(0, 0, 0);
// if it's a hit
if( behaviour.DeltaHP < 0 )
{
diff --git a/code/ryzom/client/src/init.cpp b/code/ryzom/client/src/init.cpp
index bb2540824..ba6fc74f6 100644
--- a/code/ryzom/client/src/init.cpp
+++ b/code/ryzom/client/src/init.cpp
@@ -787,7 +787,6 @@ void prelogInit()
CPath::remapExtension ("png", "tga", true);
FPU_CHECKER_ONCE
- uint i;
addPreDataPaths(ProgressBar);
FPU_CHECKER_ONCE
@@ -1045,7 +1044,7 @@ void prelogInit()
// Set the monitor color properties
CMonitorColorProperties monitorColor;
- for (i=0; i<3; i++)
+ for (uint i=0; i<3; i++)
{
monitorColor.Contrast[i] = ClientCfg.Contrast;
monitorColor.Luminosity[i] = ClientCfg.Luminosity;
diff --git a/code/ryzom/client/src/interface_v3/action_handler_help.cpp b/code/ryzom/client/src/interface_v3/action_handler_help.cpp
index 4717cc8aa..10a814401 100644
--- a/code/ryzom/client/src/interface_v3/action_handler_help.cpp
+++ b/code/ryzom/client/src/interface_v3/action_handler_help.cpp
@@ -1827,7 +1827,7 @@ void getSkillModVsType(CDBCtrlSheet *item, const CItemSheet*pIS, ucstring &itemT
void getArmorBonus(CDBCtrlSheet *item, ucstring &itemText, const CItemSheet*pIS)
{
ucstring armor_bonus("");
- sint32 level;
+ sint32 level = 0;
if (pIS->Armor.ArmorType == ARMORTYPE::HEAVY)
level = item->getQuality();
@@ -3613,7 +3613,7 @@ public:
uint8 index;
fromString(Params, index);
--index; // Param is 1-based so subtract 1
- if (index < 0 || index >= MAX_INVENTORY_ANIMAL)
+ if (index >= MAX_INVENTORY_ANIMAL)
{
return;
}
diff --git a/code/ryzom/client/src/interface_v3/animal_position_state.cpp b/code/ryzom/client/src/interface_v3/animal_position_state.cpp
index d702a6226..074c1a556 100644
--- a/code/ryzom/client/src/interface_v3/animal_position_state.cpp
+++ b/code/ryzom/client/src/interface_v3/animal_position_state.cpp
@@ -255,7 +255,7 @@ void CAnimalPositionState::serial(NLMISC::IStream &f)
// ***************************************************************************
CEntityCL *CNamedEntityPositionState::getEntity()
{
- if (!dbOk()) return false;
+ if (!dbOk()) return NULL;
return EntitiesMngr.getEntityByName(_Name->getValue32());
}
diff --git a/code/ryzom/client/src/interface_v3/brick_learned_callback.h b/code/ryzom/client/src/interface_v3/brick_learned_callback.h
index a0c9a4c48..8d8566443 100644
--- a/code/ryzom/client/src/interface_v3/brick_learned_callback.h
+++ b/code/ryzom/client/src/interface_v3/brick_learned_callback.h
@@ -30,6 +30,7 @@
class IBrickLearnedCallback
{
public:
+ virtual ~IBrickLearnedCallback() { }
virtual void onBrickLearned() =0;
};
diff --git a/code/ryzom/client/src/interface_v3/chat_window.h b/code/ryzom/client/src/interface_v3/chat_window.h
index baf146f0a..ea68140b8 100644
--- a/code/ryzom/client/src/interface_v3/chat_window.h
+++ b/code/ryzom/client/src/interface_v3/chat_window.h
@@ -153,7 +153,7 @@ protected:
// ctor
CChatWindow();
// dtor
- ~CChatWindow();
+ virtual ~CChatWindow();
protected:
IChatWindowListener *_Listener;
NLMISC::CRefPtr _Chat;
diff --git a/code/ryzom/client/src/interface_v3/group_html.cpp b/code/ryzom/client/src/interface_v3/group_html.cpp
index 5b8a03d56..034214d3d 100644
--- a/code/ryzom/client/src/interface_v3/group_html.cpp
+++ b/code/ryzom/client/src/interface_v3/group_html.cpp
@@ -3221,7 +3221,7 @@ void CGroupHTML::handle ()
else
{
/* Add our own request terminate handler. Nb: pass as param a UID, not the ptr */
- HTNet_addAfter(requestTerminater, NULL, (void*)_GroupHtmlUID, HT_ALL, HT_FILTER_LAST);
+ HTNet_addAfter(requestTerminater, NULL, (void*)(size_t)_GroupHtmlUID, HT_ALL, HT_FILTER_LAST);
/* Set the timeout for long we are going to wait for a response */
HTHost_setEventTimeout(60000);
@@ -3367,7 +3367,7 @@ void CGroupHTML::handle ()
else
{
/* Add our own request terminate handler. Nb: pass as param a UID, not the ptr */
- HTNet_addAfter(requestTerminater, NULL, (void*)_GroupHtmlUID, HT_ALL, HT_FILTER_LAST);
+ HTNet_addAfter(requestTerminater, NULL, (void*)(size_t)_GroupHtmlUID, HT_ALL, HT_FILTER_LAST);
/* Start the first request */
diff --git a/code/ryzom/client/src/interface_v3/group_menu.cpp b/code/ryzom/client/src/interface_v3/group_menu.cpp
index 758225205..36dfaeebe 100644
--- a/code/ryzom/client/src/interface_v3/group_menu.cpp
+++ b/code/ryzom/client/src/interface_v3/group_menu.cpp
@@ -102,7 +102,7 @@ void CViewTextMenu::setAlpha (sint32 a)
{
OldShadowColor.A = OldColor.A = (uint8)a;
OldShadowColorOver.A = OldColorOver.A = (uint8)a;
- OldShadowColorGrayed.A = OldShadowColorGrayed.A = (uint8)a;
+ OldShadowColorGrayed.A = OldColorGrayed.A = (uint8)a;
}
// ------------------------------------------------------------------------------------------------
diff --git a/code/ryzom/client/src/interface_v3/interface_anim.h b/code/ryzom/client/src/interface_v3/interface_anim.h
index abce8f41e..8401f88e4 100644
--- a/code/ryzom/client/src/interface_v3/interface_anim.h
+++ b/code/ryzom/client/src/interface_v3/interface_anim.h
@@ -37,7 +37,7 @@ class CInterfaceTrack
public:
CInterfaceTrack();
- ~CInterfaceTrack();
+ virtual ~CInterfaceTrack();
virtual bool parse (xmlNodePtr cur, CInterfaceGroup *parentGroup);
@@ -90,7 +90,7 @@ class CInterfaceAnim
public:
CInterfaceAnim();
- ~CInterfaceAnim();
+ virtual ~CInterfaceAnim();
virtual bool parse (xmlNodePtr cur, CInterfaceGroup *parentGroup);
diff --git a/code/ryzom/client/src/interface_v3/interface_expr.cpp b/code/ryzom/client/src/interface_v3/interface_expr.cpp
index 3f395e0b4..656c0f642 100644
--- a/code/ryzom/client/src/interface_v3/interface_expr.cpp
+++ b/code/ryzom/client/src/interface_v3/interface_expr.cpp
@@ -78,11 +78,11 @@ CInterfaceExprNode *CInterfaceExpr::buildExprTree(const std::string &expr)
{
std::string tempStr;
formatLuaCall(expr, tempStr);
- if (!buildExprTree(tempStr.c_str(), node)) return false;
+ if (buildExprTree(tempStr.c_str(), node) == NULL) return false;
}
else
{
- if (!buildExprTree(expr.c_str(), node)) return false;
+ if (buildExprTree(expr.c_str(), node) == NULL) return false;
}
return node;
diff --git a/code/ryzom/client/src/interface_v3/interface_manager.h b/code/ryzom/client/src/interface_v3/interface_manager.h
index 0de08d491..85ee99b67 100644
--- a/code/ryzom/client/src/interface_v3/interface_manager.h
+++ b/code/ryzom/client/src/interface_v3/interface_manager.h
@@ -222,6 +222,7 @@ public:
class IStringProcess
{
public:
+ virtual ~IStringProcess() { }
virtual bool cbIDStringReceived(ucstring &inOut) = 0; // called when string or id is received (return true if valid the change)
};
diff --git a/code/ryzom/client/src/r2/dmc/dmc.h b/code/ryzom/client/src/r2/dmc/dmc.h
index 1d6f9c121..9dca0e5fc 100644
--- a/code/ryzom/client/src/r2/dmc/dmc.h
+++ b/code/ryzom/client/src/r2/dmc/dmc.h
@@ -65,7 +65,7 @@ namespace R2
void loadFeatures();
- ~CDynamicMapClient();
+ virtual ~CDynamicMapClient();
void loadDefaultPalette();
diff --git a/code/ryzom/common/src/game_share/ai_wrapper.h b/code/ryzom/common/src/game_share/ai_wrapper.h
index a3a98c61a..c0bac40a2 100644
--- a/code/ryzom/common/src/game_share/ai_wrapper.h
+++ b/code/ryzom/common/src/game_share/ai_wrapper.h
@@ -47,6 +47,10 @@ namespace R2
class IAiWrapper
{
public:
+ virtual ~IAiWrapper()
+ {
+ }
+
virtual void init(NLLIGO::CLigoConfig * ligoConfig)
{
}
diff --git a/code/ryzom/tools/assoc_mem/field.h b/code/ryzom/tools/assoc_mem/field.h
index 25e201aa1..8ab8e52b4 100644
--- a/code/ryzom/tools/assoc_mem/field.h
+++ b/code/ryzom/tools/assoc_mem/field.h
@@ -32,7 +32,7 @@ class CField {
public:
CField();
CField(std::string);
- ~CField();
+ virtual ~CField();
virtual const std::vector &getPossibleValues() const;
virtual void addPossibleValue(IValue *);
virtual ICondNode *createNode(int, int, std::vector &) = 0;
diff --git a/code/ryzom/tools/assoc_mem/node.h b/code/ryzom/tools/assoc_mem/node.h
index e740c6fad..50efc7f4f 100644
--- a/code/ryzom/tools/assoc_mem/node.h
+++ b/code/ryzom/tools/assoc_mem/node.h
@@ -23,7 +23,7 @@ class INode
{
public:
INode();
- ~INode();
+ virtual ~INode();
virtual bool propagRecord(CRecord *) = 0;
};
diff --git a/code/ryzom/tools/assoc_mem/record.h b/code/ryzom/tools/assoc_mem/record.h
index 259ee6567..9310890cd 100644
--- a/code/ryzom/tools/assoc_mem/record.h
+++ b/code/ryzom/tools/assoc_mem/record.h
@@ -27,7 +27,7 @@ class CRecord {
public:
CRecord();
CRecord(std::vector &);
- ~CRecord();
+ virtual ~CRecord();
const std::vector &getValues();
void addValue(IValue *);
void addValue(std::string &);
diff --git a/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_model.cpp b/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_model.cpp
index 21c1e25ef..b16e0123c 100644
--- a/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_model.cpp
+++ b/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_model.cpp
@@ -126,6 +126,8 @@ namespace NLQT
} // end default
} // end switch valueFrom
} // end case nodeForm
+ default:
+ break;
} // end switch nodeFrom
return QVariant();
}
diff --git a/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_proxy_model.cpp b/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_proxy_model.cpp
index 68b990b30..0c4c5b7eb 100644
--- a/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_proxy_model.cpp
+++ b/code/ryzom/tools/leveldesign/georges_editor_qt/src/georgesform_proxy_model.cpp
@@ -79,6 +79,8 @@ namespace NLQT
}
}
}
+ default:
+ break;
}
return true;
}
diff --git a/code/ryzom/tools/translation_tools/extract_bot_names.cpp b/code/ryzom/tools/translation_tools/extract_bot_names.cpp
index e8198e63d..4c3268e1f 100644
--- a/code/ryzom/tools/translation_tools/extract_bot_names.cpp
+++ b/code/ryzom/tools/translation_tools/extract_bot_names.cpp
@@ -507,7 +507,7 @@ int extractBotNames(int argc, char *argv[])
map::iterator first(SimpleNames.begin()), last(SimpleNames.end());
for (; first != last; ++first)
{
- uint rowIdx;
+ uint rowIdx = 0;
if (!botNames.findRow(botIdCol, first->first, rowIdx))
{
// we need to add the entry
@@ -524,7 +524,7 @@ int extractBotNames(int argc, char *argv[])
{
// set/update the sheet name info
// try to restore the existing translation
- uint transRowIdx;
+ uint transRowIdx = 0;
if (transBotNames.findRow(transIdCol, first->first, transRowIdx))
{
ucstring wkBotName = botNames.getData(rowIdx, ucstring("bot name"));
From 1374286cab7eba5029f03d7de027c0630d35d3d0 Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 25 Sep 2012 13:20:25 +0200
Subject: [PATCH 022/125] Changed: #825 Remove all warnings when compiling
Ryzom
---
.../3d/object_viewer_qt/src/plugins/example/qnel_widget.cpp | 2 +-
code/ryzom/client/src/interface_v3/interface_expr.cpp | 4 ++--
code/ryzom/common/src/game_share/dms.h | 2 +-
code/ryzom/tools/assoc_mem/value.h | 2 ++
4 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/qnel_widget.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/qnel_widget.cpp
index 4872923db..d512521f7 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/qnel_widget.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/qnel_widget.cpp
@@ -60,7 +60,7 @@ QNLWidget::~QNLWidget()
void QNLWidget::init()
{
// create the driver
- m_driver = NL3D::UDriver::createDriver(NULL, false, NULL);
+ m_driver = NL3D::UDriver::createDriver(0, false);
nlassert(m_driver);
// initialize the nel 3d viewport
diff --git a/code/ryzom/client/src/interface_v3/interface_expr.cpp b/code/ryzom/client/src/interface_v3/interface_expr.cpp
index 656c0f642..91a6cb7f3 100644
--- a/code/ryzom/client/src/interface_v3/interface_expr.cpp
+++ b/code/ryzom/client/src/interface_v3/interface_expr.cpp
@@ -78,11 +78,11 @@ CInterfaceExprNode *CInterfaceExpr::buildExprTree(const std::string &expr)
{
std::string tempStr;
formatLuaCall(expr, tempStr);
- if (buildExprTree(tempStr.c_str(), node) == NULL) return false;
+ if (buildExprTree(tempStr.c_str(), node) == NULL) return NULL;
}
else
{
- if (buildExprTree(expr.c_str(), node) == NULL) return false;
+ if (buildExprTree(expr.c_str(), node) == NULL) return NULL;
}
return node;
diff --git a/code/ryzom/common/src/game_share/dms.h b/code/ryzom/common/src/game_share/dms.h
index 149c626c8..b53b8626d 100644
--- a/code/ryzom/common/src/game_share/dms.h
+++ b/code/ryzom/common/src/game_share/dms.h
@@ -148,7 +148,7 @@ namespace R2
public:
CDynamicMapService( NLMISC::CConfigFile& confFile, NLNET::IModuleSocket * gateway);
- ~CDynamicMapService();
+ virtual ~CDynamicMapService();
static CDynamicMapService* getInstance();
diff --git a/code/ryzom/tools/assoc_mem/value.h b/code/ryzom/tools/assoc_mem/value.h
index 321d47a14..96f0fed46 100644
--- a/code/ryzom/tools/assoc_mem/value.h
+++ b/code/ryzom/tools/assoc_mem/value.h
@@ -21,6 +21,8 @@
class IValue {
public:
+ virtual ~IValue() { }
+
virtual void getValue(IValue &) = 0;
virtual void setValue(IValue &) = 0;
From cb12a7546ad164f86755d6a22c7b3d22b4ba97ac Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 25 Sep 2012 13:20:37 +0200
Subject: [PATCH 023/125] Changed: #1254 Error while compiling with current
stable squish
---
code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt b/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
index e40b5abf8..4062f6905 100644
--- a/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
+++ b/code/nel/tools/3d/s3tc_compressor_lib/CMakeLists.txt
@@ -5,7 +5,7 @@ INCLUDE_DIRECTORIES(${SQUISH_INCLUDE_DIR})
NL_TARGET_LIB(s3tc_compressor ${SRC} ${HEADER})
-TARGET_LINK_LIBRARIES(s3tc_compressor ${SQUISH_LIBRARIES})
+TARGET_LINK_LIBRARIES(s3tc_compressor ${SQUISH_LIBRARIES} nelmisc nel3d)
NL_DEFAULT_PROPS(s3tc_compressor "NeL, Tools, 3D: S3TC Compressor Library")
NL_ADD_RUNTIME_FLAGS(s3tc_compressor)
From e7d490d9a87704f4c86d20d668efee8dddd0ffeb Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 25 Sep 2012 14:15:04 +0200
Subject: [PATCH 024/125] Changed: #825 Remove all warnings when compiling
Ryzom
---
code/ryzom/client/src/login_patch.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/ryzom/client/src/login_patch.cpp b/code/ryzom/client/src/login_patch.cpp
index c14488de0..bf3910dcf 100644
--- a/code/ryzom/client/src/login_patch.cpp
+++ b/code/ryzom/client/src/login_patch.cpp
@@ -254,7 +254,7 @@ void CPatchManager::init(const std::vector& patchURIs, const std::s
}
srand(NLMISC::CTime::getSecondsSince1970());
- UsedServer = (sint)((float)(rand() / (RAND_MAX+1)) * (sint)PatchServers.size());
+ UsedServer = (sint)(((double)rand() / ((double)RAND_MAX+1.0)) * (double)PatchServers.size());
ServerPath = CPath::standardizePath (sServerPath);
ServerVersion = sServerVersion;
From edee553e1bb8da44f2a952ea7f095122c41240e8 Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 25 Sep 2012 21:21:58 +0200
Subject: [PATCH 025/125] Fixed: Don't compress textures in DXTC when used as
buttons
---
.../client/src/interface_v3/ctrl_button.cpp | 21 ++++++-------------
.../client/src/interface_v3/view_bitmap.cpp | 3 ---
2 files changed, 6 insertions(+), 18 deletions(-)
diff --git a/code/ryzom/client/src/interface_v3/ctrl_button.cpp b/code/ryzom/client/src/interface_v3/ctrl_button.cpp
index a6fa08146..0c7dd2aa5 100644
--- a/code/ryzom/client/src/interface_v3/ctrl_button.cpp
+++ b/code/ryzom/client/src/interface_v3/ctrl_button.cpp
@@ -50,24 +50,21 @@ bool CCtrlButton::parse(xmlNodePtr cur, CInterfaceGroup * parentGroup)
if (prop)
{
string TxName = (const char *) prop;
- TxName = strlwr(TxName);
- _TextureIdNormal.setTexture(TxName.c_str());
+ setTexture(toLower(TxName));
}
prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_pushed" );
if (prop)
{
string TxName = (const char *) prop;
- TxName = strlwr(TxName);
- _TextureIdPushed.setTexture(TxName.c_str());
+ setTexturePushed(toLower(TxName));
}
prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_over" );
if (prop)
{
string TxName = (const char *) prop;
- TxName = strlwr(TxName);
- _TextureIdOver.setTexture(TxName.c_str());
+ setTextureOver(toLower(TxName));
}
// *** Misc.
@@ -261,25 +258,19 @@ void CCtrlButton::updateCoords()
// ----------------------------------------------------------------------------
void CCtrlButton::setTexture(const std::string&name)
{
-// CInterfaceManager *pIM = CInterfaceManager::getInstance();
-// CViewRenderer &rVR = pIM->getViewRenderer();
- _TextureIdNormal.setTexture(name.c_str());
+ _TextureIdNormal.setTexture(name.c_str (), 0, 0, 0, 0, false);
}
// ----------------------------------------------------------------------------
void CCtrlButton::setTexturePushed(const std::string&name)
{
-// CInterfaceManager *pIM = CInterfaceManager::getInstance();
-// CViewRenderer &rVR = pIM->getViewRenderer();
- _TextureIdPushed.setTexture(name.c_str());
+ _TextureIdPushed.setTexture(name.c_str (), 0, 0, 0, 0, false);
}
// ----------------------------------------------------------------------------
void CCtrlButton::setTextureOver(const std::string&name)
{
-// CInterfaceManager *pIM = CInterfaceManager::getInstance();
-// CViewRenderer &rVR = pIM->getViewRenderer();
- _TextureIdOver.setTexture(name.c_str());
+ _TextureIdOver.setTexture(name.c_str (), 0, 0, 0, 0, false);
}
// ----------------------------------------------------------------------------
diff --git a/code/ryzom/client/src/interface_v3/view_bitmap.cpp b/code/ryzom/client/src/interface_v3/view_bitmap.cpp
index 3960cb674..b71cbb464 100644
--- a/code/ryzom/client/src/interface_v3/view_bitmap.cpp
+++ b/code/ryzom/client/src/interface_v3/view_bitmap.cpp
@@ -221,9 +221,6 @@ void CViewBitmap::updateCoords()
// ----------------------------------------------------------------------------
void CViewBitmap::setTexture(const std::string & TxName)
{
-// CInterfaceManager *pIM = CInterfaceManager::getInstance();
-// CViewRenderer &rVR = pIM->getViewRenderer();
-
_TextureId.setTexture (TxName.c_str (), _TxtOffsetX, _TxtOffsetY, _TxtWidth, _TxtHeight, false);
}
From 493f033e025272844c657ea641d14b478ebbe660 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 00:02:27 +0200
Subject: [PATCH 026/125] Changed: Added a warning when a texture can't be
created in D3D driver
---
.../3d/driver/direct3d/driver_direct3d_texture.cpp | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/code/nel/src/3d/driver/direct3d/driver_direct3d_texture.cpp b/code/nel/src/3d/driver/direct3d/driver_direct3d_texture.cpp
index 2cd16bf1c..cfafaf5f9 100644
--- a/code/nel/src/3d/driver/direct3d/driver_direct3d_texture.cpp
+++ b/code/nel/src/3d/driver/direct3d/driver_direct3d_texture.cpp
@@ -442,7 +442,7 @@ bool CDriverD3D::generateD3DTexture (ITexture& tex, bool textureDegradation, D3D
if (d3dtext->Texture == NULL)
{
// profiling: count TextureMemory usage.
- uint32 textureMeory = computeTextureMemoryUsage (width, height, levels, destFormat, cube);
+ uint32 textureMemory = computeTextureMemoryUsage (width, height, levels, destFormat, cube);
// Create the texture
bool createSuccess;
@@ -465,7 +465,14 @@ bool CDriverD3D::generateD3DTexture (ITexture& tex, bool textureDegradation, D3D
_DeviceInterface->SetSamplerState(0, D3DSAMP_ADDRESSW, D3DTADDRESS_CLAMP);
}
- createSuccess = _DeviceInterface->CreateTexture (width, height, levels, renderTarget?D3DUSAGE_RENDERTARGET:0, destFormat, renderTarget?D3DPOOL_DEFAULT:D3DPOOL_MANAGED, &(d3dtext->Texture2d), NULL) == D3D_OK;
+ HRESULT hr = _DeviceInterface->CreateTexture (width, height, levels, renderTarget?D3DUSAGE_RENDERTARGET:0, destFormat, renderTarget?D3DPOOL_DEFAULT:D3DPOOL_MANAGED, &(d3dtext->Texture2d), NULL);
+
+ if (hr != D3D_OK)
+ {
+ nlwarning("CreateTexture failed with code 0x%x for texture %s in %ux%u", hr, tex.getShareName().c_str(), width, height);
+ }
+
+ createSuccess = hr == D3D_OK;
d3dtext->Texture = d3dtext->Texture2d;
}
@@ -473,7 +480,7 @@ bool CDriverD3D::generateD3DTexture (ITexture& tex, bool textureDegradation, D3D
return false;
// Stats
- d3dtext->TextureMemory = textureMeory;
+ d3dtext->TextureMemory = textureMemory;
_AllocatedTextureMemory += d3dtext->TextureMemory;
// Copy parameters
From a9fa9bb78aa6b5b8c6ddb9d41e428fc4816cc0ae Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:43:18 +0200
Subject: [PATCH 027/125] Changed: Install data_leveldesign if WITH_RYZOM_TOOLS
is enabled
---
code/ryzom/common/CMakeLists.txt | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/code/ryzom/common/CMakeLists.txt b/code/ryzom/common/CMakeLists.txt
index dbf1c937d..109876929 100644
--- a/code/ryzom/common/CMakeLists.txt
+++ b/code/ryzom/common/CMakeLists.txt
@@ -8,3 +8,7 @@ ADD_SUBDIRECTORY(src)
#INSTALL(TARGETS data_common ARCHIVE DESTINATION ${RYZOM_SHARE_PREFIX}/data)
#INSTALL(FILES "${CMAKE_BINARY_DIR}/share/data_common.bnp" DESTINATION "${RYZOM_SHARE_PREFIX}/data")
+
+#IF(WITH_RYZOM_TOOLS)
+ INSTALL(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/data_leveldesign" DESTINATION "${RYZOM_SHARE_PREFIX}")
+#ENDIF(WITH_RYZOM_TOOLS)
From 62435e4f2f2e32b11c2c6a3f46ae959c73b68098 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:44:03 +0200
Subject: [PATCH 028/125] Changed: Don't compile 7zDec if WITH_RYZOM_TOOLS is
disabled
---
.../ryzom/client/src/seven_zip/CMakeLists.txt | 20 ++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/code/ryzom/client/src/seven_zip/CMakeLists.txt b/code/ryzom/client/src/seven_zip/CMakeLists.txt
index ba4073783..8cdade76f 100644
--- a/code/ryzom/client/src/seven_zip/CMakeLists.txt
+++ b/code/ryzom/client/src/seven_zip/CMakeLists.txt
@@ -1,16 +1,9 @@
-FILE(GLOB SRC *.cpp *.h)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
FILE(GLOB LIB_SRC *.cpp *.h)
LIST(REMOVE_ITEM LIB_SRC ${CMAKE_CURRENT_SOURCE_DIR}/7zMain.cpp)
-ADD_EXECUTABLE(7zDec ${SRC})
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
-#TARGET_LINK_LIBRARIES(7zDec ${PLATFORM_LINKFLAGS})
-NL_DEFAULT_PROPS(7zDec "Ryzom, Tools, Misc: Seven Zip Decoder")
-NL_ADD_RUNTIME_FLAGS(7zDec)
-
NL_TARGET_LIB(ryzom_sevenzip ${LIB_SRC})
# TARGET_LINK_LIBRARIES(ryzom_sevenzip ${PLATFORM_LINKFLAGS})
NL_DEFAULT_PROPS(ryzom_sevenzip "Ryzom, Library: Seven Zip")
@@ -21,5 +14,14 @@ ADD_DEFINITIONS(-D_SZ_ONE_DIRECTORY)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
INSTALL(TARGETS ryzom_sevenzip LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
- INSTALL(TARGETS 7zDec RUNTIME DESTINATION bin COMPONENT client)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
+
+IF(WITH_RYZOM_TOOLS)
+ ADD_EXECUTABLE(7zDec ${CMAKE_CURRENT_SOURCE_DIR}/7zMain.cpp)
+
+ TARGET_LINK_LIBRARIES(7zDec ryzom_sevenzip)
+ NL_DEFAULT_PROPS(7zDec "Ryzom, Tools, Misc: Seven Zip Decoder")
+ NL_ADD_RUNTIME_FLAGS(7zDec)
+
+ INSTALL(TARGETS 7zDec RUNTIME DESTINATION bin COMPONENT client)
+ENDIF(WITH_RYZOM_TOOLS)
From 2e4df39c5bd41342b706926ec26d1864122b5168 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:44:52 +0200
Subject: [PATCH 029/125] Fixed: Don't compress textures in DXTC when used as
buttons
---
code/ryzom/client/src/interface_v3/ctrl_button.cpp | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/ryzom/client/src/interface_v3/ctrl_button.cpp b/code/ryzom/client/src/interface_v3/ctrl_button.cpp
index 0c7dd2aa5..89f102e0b 100644
--- a/code/ryzom/client/src/interface_v3/ctrl_button.cpp
+++ b/code/ryzom/client/src/interface_v3/ctrl_button.cpp
@@ -258,19 +258,19 @@ void CCtrlButton::updateCoords()
// ----------------------------------------------------------------------------
void CCtrlButton::setTexture(const std::string&name)
{
- _TextureIdNormal.setTexture(name.c_str (), 0, 0, 0, 0, false);
+ _TextureIdNormal.setTexture(name.c_str (), 0, 0, -1, -1, false);
}
// ----------------------------------------------------------------------------
void CCtrlButton::setTexturePushed(const std::string&name)
{
- _TextureIdPushed.setTexture(name.c_str (), 0, 0, 0, 0, false);
+ _TextureIdPushed.setTexture(name.c_str (), 0, 0, -1, -1, false);
}
// ----------------------------------------------------------------------------
void CCtrlButton::setTextureOver(const std::string&name)
{
- _TextureIdOver.setTexture(name.c_str (), 0, 0, 0, 0, false);
+ _TextureIdOver.setTexture(name.c_str (), 0, 0, -1, -1, false);
}
// ----------------------------------------------------------------------------
From a5218b92580d72341e69aefb364452f17ccf4dde Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:45:34 +0200
Subject: [PATCH 030/125] Changed: Synchronization with SVN
---
code/ryzom/client/src/commands.cpp | 2 +-
code/ryzom/client/src/user_entity.cpp | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/ryzom/client/src/commands.cpp b/code/ryzom/client/src/commands.cpp
index 1990003b0..81b9689a4 100644
--- a/code/ryzom/client/src/commands.cpp
+++ b/code/ryzom/client/src/commands.cpp
@@ -5770,7 +5770,7 @@ NLMISC_COMMAND(em, "emote command", "")
-NLMISC_COMMAND(guildmotd, "Set the guild message of the day","")
+NLMISC_COMMAND(guildmotd, "Set or see the guild message of the day","")
{
CBitMemStream out;
if (!GenericMsgHeaderMngr.pushNameToStream("COMMAND:GUILDMOTD", out))
diff --git a/code/ryzom/client/src/user_entity.cpp b/code/ryzom/client/src/user_entity.cpp
index 254b02cb5..c0dec5500 100644
--- a/code/ryzom/client/src/user_entity.cpp
+++ b/code/ryzom/client/src/user_entity.cpp
@@ -3555,8 +3555,8 @@ void CUserEntity::CSpeedFactor::update(ICDBNode *node) // virtual
if(_Value > 2.0f)
{
//nlwarning("HACK: you try to change the speed factor to %f", _Value);
- nlstop;
- _Value = 2.0f;
+ //nlstop;
+ //_Value = 2.0f;
}
}// CSpeedFactor::update //
From 8e2009279d62526fc4c53e9e8794c5e2ae2ca925 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:46:43 +0200
Subject: [PATCH 031/125] Changed: Drivers runtimes should go in
NL_DRIVER_PREFIX
---
code/nel/src/3d/driver/direct3d/CMakeLists.txt | 2 +-
code/nel/src/3d/driver/opengl/CMakeLists.txt | 2 +-
code/nel/src/3d/driver/opengles/CMakeLists.txt | 2 +-
code/nel/src/sound/driver/dsound/CMakeLists.txt | 2 +-
code/nel/src/sound/driver/fmod/CMakeLists.txt | 2 +-
code/nel/src/sound/driver/xaudio2/CMakeLists.txt | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/code/nel/src/3d/driver/direct3d/CMakeLists.txt b/code/nel/src/3d/driver/direct3d/CMakeLists.txt
index 52a4ecd06..ede76f06c 100644
--- a/code/nel/src/3d/driver/direct3d/CMakeLists.txt
+++ b/code/nel/src/3d/driver/direct3d/CMakeLists.txt
@@ -17,7 +17,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_direct3d_win LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS nel_drv_direct3d_win LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_DRIVER_PREFIX} COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_direct3d_win RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/3d/driver/opengl/CMakeLists.txt b/code/nel/src/3d/driver/opengl/CMakeLists.txt
index 232d38706..8fa99d488 100644
--- a/code/nel/src/3d/driver/opengl/CMakeLists.txt
+++ b/code/nel/src/3d/driver/opengl/CMakeLists.txt
@@ -74,7 +74,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS ${NLDRV_OGL_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS ${NLDRV_OGL_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_DRIVER_PREFIX} COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS ${NLDRV_OGL_LIB} RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/3d/driver/opengles/CMakeLists.txt b/code/nel/src/3d/driver/opengles/CMakeLists.txt
index 415da1791..74f0ddff3 100644
--- a/code/nel/src/3d/driver/opengles/CMakeLists.txt
+++ b/code/nel/src/3d/driver/opengles/CMakeLists.txt
@@ -77,7 +77,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS ${NLDRV_OGLES_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin COMPONENT drivers3d)
+ INSTALL(TARGETS ${NLDRV_OGLES_LIB} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_DRIVER_PREFIX} COMPONENT drivers3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS ${NLDRV_OGLES_LIB} RUNTIME DESTINATION maxplugin COMPONENT drivers3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/dsound/CMakeLists.txt b/code/nel/src/sound/driver/dsound/CMakeLists.txt
index 5bde8f1b1..74d431084 100644
--- a/code/nel/src/sound/driver/dsound/CMakeLists.txt
+++ b/code/nel/src/sound/driver/dsound/CMakeLists.txt
@@ -14,7 +14,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION ${NL_DRIVER_PREFIX} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_dsound_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/fmod/CMakeLists.txt b/code/nel/src/sound/driver/fmod/CMakeLists.txt
index 5e8eed000..d8ee31ba7 100644
--- a/code/nel/src/sound/driver/fmod/CMakeLists.txt
+++ b/code/nel/src/sound/driver/fmod/CMakeLists.txt
@@ -14,7 +14,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION ${NL_DRIVER_PREFIX} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_fmod_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/src/sound/driver/xaudio2/CMakeLists.txt b/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
index 13a6be8d8..9113bd022 100644
--- a/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
+++ b/code/nel/src/sound/driver/xaudio2/CMakeLists.txt
@@ -41,7 +41,7 @@ IF(WITH_PCH)
ENDIF(WITH_PCH)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC_DRIVERS) OR NOT WITH_STATIC_DRIVERS)
- INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
+ INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION ${NL_DRIVER_PREFIX} LIBRARY DESTINATION ${NL_DRIVER_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT driverssound)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS nel_drv_xaudio2_win RUNTIME DESTINATION maxplugin COMPONENT driverssound)
ENDIF(WITH_MAXPLUGIN)
From 3a3fb5ea1ab0bb76bbd267e231b0cb9313931037 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:47:13 +0200
Subject: [PATCH 032/125] Changed: Added zbuffer formats (commented)
---
code/nel/src/3d/driver/direct3d/driver_direct3d.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/code/nel/src/3d/driver/direct3d/driver_direct3d.cpp b/code/nel/src/3d/driver/direct3d/driver_direct3d.cpp
index 3a542687a..2b18c8698 100644
--- a/code/nel/src/3d/driver/direct3d/driver_direct3d.cpp
+++ b/code/nel/src/3d/driver/direct3d/driver_direct3d.cpp
@@ -2715,6 +2715,8 @@ bool CDriverD3D::fillPresentParameter (D3DPRESENT_PARAMETERS ¶meters, D3DFOR
// Choose a zbuffer format
D3DFORMAT zbufferFormats[]=
{
+ //uncomment to save zbuffer D3DFMT_D32F_LOCKABLE,
+ //uncomment to save zbuffer D3DFMT_D16_LOCKABLE,
/*D3DFMT_D32,
D3DFMT_D24X8,*/
D3DFMT_D24S8,
From e67c6e9b1eedbd71846f59f73be7ef531afd1b05 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:51:11 +0200
Subject: [PATCH 034/125] Changed: Under Windows, install all files in the same
folder excepted includes and libs
---
code/CMakeModules/nel.cmake | 38 +++++++++++++++----------------------
1 file changed, 15 insertions(+), 23 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index fb7ff9a3f..488ad952d 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -638,7 +638,7 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/etc path.
IF(NOT NL_ETC_PREFIX)
IF(WIN32)
- SET(NL_ETC_PREFIX "../etc/nel" CACHE PATH "Installation path for configurations")
+ SET(NL_ETC_PREFIX "." CACHE PATH "Installation path for configurations")
ELSE(WIN32)
SET(NL_ETC_PREFIX "etc/nel" CACHE PATH "Installation path for configurations")
ENDIF(WIN32)
@@ -648,7 +648,7 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/share path.
IF(NOT NL_SHARE_PREFIX)
IF(WIN32)
- SET(NL_SHARE_PREFIX "../share/nel" CACHE PATH "Installation path for data.")
+ SET(NL_SHARE_PREFIX "." CACHE PATH "Installation path for data.")
ELSE(WIN32)
SET(NL_SHARE_PREFIX "share/nel" CACHE PATH "Installation path for data.")
ENDIF(WIN32)
@@ -658,7 +658,7 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/sbin path.
IF(NOT NL_SBIN_PREFIX)
IF(WIN32)
- SET(NL_SBIN_PREFIX "../sbin" CACHE PATH "Installation path for admin tools and services.")
+ SET(NL_SBIN_PREFIX "." CACHE PATH "Installation path for admin tools and services.")
ELSE(WIN32)
SET(NL_SBIN_PREFIX "sbin" CACHE PATH "Installation path for admin tools and services.")
ENDIF(WIN32)
@@ -668,7 +668,7 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/bin path.
IF(NOT NL_BIN_PREFIX)
IF(WIN32)
- SET(NL_BIN_PREFIX "../bin" CACHE PATH "Installation path for tools and applications.")
+ SET(NL_BIN_PREFIX "." CACHE PATH "Installation path for tools and applications.")
ELSE(WIN32)
SET(NL_BIN_PREFIX "bin" CACHE PATH "Installation path for tools and applications.")
ENDIF(WIN32)
@@ -677,22 +677,18 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/lib path.
IF(NOT NL_LIB_PREFIX)
- IF(WIN32)
- SET(NL_LIB_PREFIX "../lib" CACHE PATH "Installation path for libraries.")
- ELSE(WIN32)
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
- ENDIF(WIN32)
+ IF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(NL_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(NL_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
+ ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
ENDIF(NOT NL_LIB_PREFIX)
NL_MAKE_ABSOLUTE_PREFIX(NL_LIB_PREFIX NL_LIB_ABSOLUTE_PREFIX)
## Allow override of install_prefix/lib path.
IF(NOT NL_DRIVER_PREFIX)
IF(WIN32)
- SET(NL_DRIVER_PREFIX "../lib" CACHE PATH "Installation path for drivers.")
+ SET(NL_DRIVER_PREFIX "." CACHE PATH "Installation path for drivers.")
ELSE(WIN32)
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(NL_DRIVER_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
@@ -748,15 +744,11 @@ MACRO(RYZOM_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/lib path.
IF(NOT RYZOM_LIB_PREFIX)
- IF(WIN32)
- SET(RYZOM_LIB_PREFIX "." CACHE PATH "Installation path for libraries.")
- ELSE(WIN32)
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(RYZOM_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
- SET(RYZOM_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
- ENDIF(WIN32)
+ IF(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
+ ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
ENDIF(NOT RYZOM_LIB_PREFIX)
NL_MAKE_ABSOLUTE_PREFIX(RYZOM_LIB_PREFIX RYZOM_LIB_ABSOLUTE_PREFIX)
From f7ee271a8fc6619cf8cb2ff60fd2cf9933024444 Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 26 Sep 2012 12:53:03 +0200
Subject: [PATCH 035/125] Changed: Use RYZOM_SHARE_PREFIX as prefix to look for
leveldesign data
---
.../src/plugins/core/general_settings_page.cpp | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/general_settings_page.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/general_settings_page.cpp
index 9031fcb9f..e21edafec 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/general_settings_page.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/general_settings_page.cpp
@@ -31,6 +31,10 @@
#include
#include
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
namespace Core
{
@@ -83,11 +87,18 @@ void GeneralSettingsPage::applyGeneralSettings()
QApplication::setPalette(m_originalPalette);
settings->endGroup();
+ QString levelDesignPrefix;
+#if defined(_DEBUG) && defined(NL_OS_WINDOWS)
+ levelDesignPrefix = "l:";
+#else
+ levelDesignPrefix = QString("%1/data_leveldesign").arg(RYZOM_SHARE_PREFIX);
+#endif
+
// Add primitives path and ligo config file to CPath
settings->beginGroup(Core::Constants::DATA_PATH_SECTION);
- QString primitivePath = settings->value(Core::Constants::PRIMITIVES_PATH, "l:/primitives").toString();
- QString ligoConfigFile = settings->value(Core::Constants::LIGOCONFIG_FILE, "l:/leveldesign/world_editor_files/world_editor_classes.xml").toString();
- QString leveldesignPath = settings->value(Core::Constants::LEVELDESIGN_PATH, "l:/leveldesign").toString();
+ QString primitivePath = settings->value(Core::Constants::PRIMITIVES_PATH, QString("%1/primitives").arg(levelDesignPrefix)).toString();
+ QString ligoConfigFile = settings->value(Core::Constants::LIGOCONFIG_FILE, QString("%1/leveldesign/world_editor_files/world_editor_classes.xml").arg(levelDesignPrefix)).toString();
+ QString leveldesignPath = settings->value(Core::Constants::LEVELDESIGN_PATH, QString("%1/leveldesign").arg(levelDesignPrefix)).toString();
NLMISC::CPath::addSearchPath(primitivePath.toStdString(), true, false);
NLMISC::CPath::display();
NLMISC::CPath::addSearchFile(ligoConfigFile.toStdString());
From 6c0bd82c2a1774b69f9f15ce5b16837c05830dab Mon Sep 17 00:00:00 2001
From: kervala
Date: Thu, 27 Sep 2012 22:11:26 +0200
Subject: [PATCH 036/125] Changed: Use *_PREFIX instead of fixed values with
INSTALL
---
code/CMakeLists.txt | 16 ++++++++--------
code/nel/samples/3d/cegui/CMakeLists.txt | 2 +-
.../nel/samples/3d/cluster_viewer/CMakeLists.txt | 2 +-
code/nel/samples/3d/font/CMakeLists.txt | 2 +-
code/nel/samples/3d/qtnel/CMakeLists.txt | 2 +-
code/nel/samples/3d/shape_viewer/CMakeLists.txt | 2 +-
code/nel/samples/georges/CMakeLists.txt | 2 +-
code/nel/samples/misc/command/CMakeLists.txt | 2 +-
code/nel/samples/misc/configfile/CMakeLists.txt | 2 +-
code/nel/samples/misc/debug/CMakeLists.txt | 2 +-
code/nel/samples/misc/i18n/CMakeLists.txt | 2 +-
code/nel/samples/misc/log/CMakeLists.txt | 2 +-
code/nel/samples/misc/strings/CMakeLists.txt | 2 +-
code/nel/samples/misc/types_check/CMakeLists.txt | 2 +-
code/nel/samples/net/chat/CMakeLists.txt | 2 +-
.../samples/net/class_transport/CMakeLists.txt | 2 +-
code/nel/samples/net/login_system/CMakeLists.txt | 2 +-
code/nel/samples/net/udp/CMakeLists.txt | 2 +-
code/nel/samples/pacs/CMakeLists.txt | 2 +-
.../samples/sound/sound_sources/CMakeLists.txt | 2 +-
.../nel/samples/sound/stream_file/CMakeLists.txt | 2 +-
.../sound/stream_ogg_vorbis/CMakeLists.txt | 2 +-
code/nel/src/cegui/CMakeLists.txt | 2 +-
code/nel/tools/3d/anim_builder/CMakeLists.txt | 2 +-
.../3d/animation_set_builder/CMakeLists.txt | 2 +-
code/nel/tools/3d/build_clod_bank/CMakeLists.txt | 2 +-
code/nel/tools/3d/build_clodtex/CMakeLists.txt | 2 +-
.../tools/3d/build_coarse_mesh/CMakeLists.txt | 2 +-
code/nel/tools/3d/build_far_bank/CMakeLists.txt | 2 +-
code/nel/tools/3d/build_interface/CMakeLists.txt | 2 +-
.../tools/3d/build_shadow_skin/CMakeLists.txt | 2 +-
code/nel/tools/3d/build_smallbank/CMakeLists.txt | 2 +-
code/nel/tools/3d/cluster_viewer/CMakeLists.txt | 2 +-
code/nel/tools/3d/file_info/CMakeLists.txt | 2 +-
code/nel/tools/3d/get_neighbors/CMakeLists.txt | 2 +-
code/nel/tools/3d/hls_bank_maker/CMakeLists.txt | 2 +-
code/nel/tools/3d/ig_add/CMakeLists.txt | 2 +-
code/nel/tools/3d/ig_elevation/CMakeLists.txt | 2 +-
code/nel/tools/3d/ig_info/CMakeLists.txt | 2 +-
code/nel/tools/3d/ig_lighter/CMakeLists.txt | 2 +-
.../tools/3d/lightmap_optimizer/CMakeLists.txt | 2 +-
code/nel/tools/3d/object_viewer/CMakeLists.txt | 4 ++--
.../tools/3d/object_viewer_exe/CMakeLists.txt | 2 +-
.../nel/tools/3d/object_viewer_qt/CMakeLists.txt | 5 ++++-
.../tools/3d/object_viewer_qt/src/CMakeLists.txt | 2 +-
.../src/plugins/bnp_manager/CMakeLists.txt | 2 +-
.../src/plugins/core/CMakeLists.txt | 15 ++++++++++++++-
.../src/plugins/disp_sheet_id/CMakeLists.txt | 2 +-
.../src/plugins/example/CMakeLists.txt | 2 +-
.../src/plugins/georges_editor/CMakeLists.txt | 2 +-
.../src/plugins/landscape_editor/CMakeLists.txt | 2 +-
.../src/plugins/log/CMakeLists.txt | 2 +-
.../src/plugins/mission_compiler/CMakeLists.txt | 2 +-
.../src/plugins/object_viewer/CMakeLists.txt | 2 +-
.../plugins/ovqt_sheet_builder/CMakeLists.txt | 2 +-
.../plugins/translation_manager/CMakeLists.txt | 2 +-
.../src/plugins/zone_painter/CMakeLists.txt | 2 +-
.../3d/object_viewer_widget/src/CMakeLists.txt | 2 +-
code/nel/tools/3d/panoply_maker/CMakeLists.txt | 2 +-
code/nel/tools/3d/shapes_exporter/CMakeLists.txt | 2 +-
code/nel/tools/3d/tga_2_dds/CMakeLists.txt | 2 +-
code/nel/tools/3d/tga_cut/CMakeLists.txt | 2 +-
code/nel/tools/3d/tga_resize/CMakeLists.txt | 2 +-
code/nel/tools/3d/tile_edit/CMakeLists.txt | 2 +-
code/nel/tools/3d/tile_edit_qt/CMakeLists.txt | 2 +-
code/nel/tools/3d/zone_check_bind/CMakeLists.txt | 2 +-
.../tools/3d/zone_dependencies/CMakeLists.txt | 2 +-
code/nel/tools/3d/zone_dump/CMakeLists.txt | 2 +-
code/nel/tools/3d/zone_ig_lighter/CMakeLists.txt | 2 +-
code/nel/tools/3d/zone_lighter/CMakeLists.txt | 2 +-
code/nel/tools/3d/zone_welder/CMakeLists.txt | 2 +-
code/nel/tools/3d/zviewer/CMakeLists.txt | 2 +-
.../nel/tools/georges/georges2csv/CMakeLists.txt | 2 +-
.../tools/logic/logic_editor_dll/CMakeLists.txt | 2 +-
.../tools/logic/logic_editor_exe/CMakeLists.txt | 2 +-
code/nel/tools/memory/memlog/CMakeLists.txt | 2 +-
code/nel/tools/misc/bnp_make/CMakeLists.txt | 2 +-
.../nel/tools/misc/branch_patcher/CMakeLists.txt | 2 +-
code/nel/tools/misc/data_mirror/CMakeLists.txt | 2 +-
code/nel/tools/misc/disp_sheet_id/CMakeLists.txt | 2 +-
code/nel/tools/misc/exec_timeout/CMakeLists.txt | 2 +-
.../tools/misc/extract_filename/CMakeLists.txt | 2 +-
code/nel/tools/misc/lock/CMakeLists.txt | 2 +-
code/nel/tools/misc/log_analyser/CMakeLists.txt | 2 +-
.../extract_warnings/CMakeLists.txt | 2 +-
code/nel/tools/misc/make_sheet_id/CMakeLists.txt | 2 +-
code/nel/tools/misc/message_box/CMakeLists.txt | 2 +-
.../nel/tools/misc/message_box_qt/CMakeLists.txt | 2 +-
.../tools/misc/multi_cd_setup_fix/CMakeLists.txt | 2 +-
code/nel/tools/misc/probe_timers/CMakeLists.txt | 2 +-
code/nel/tools/misc/words_dic/CMakeLists.txt | 2 +-
code/nel/tools/misc/words_dic_qt/CMakeLists.txt | 2 +-
code/nel/tools/misc/xml_packer/CMakeLists.txt | 2 +-
code/nel/tools/nel_unit_test/CMakeLists.txt | 2 +-
.../nel/tools/pacs/build_ig_boxes/CMakeLists.txt | 2 +-
.../tools/pacs/build_indoor_rbank/CMakeLists.txt | 2 +-
code/nel/tools/pacs/build_rbank/CMakeLists.txt | 2 +-
.../tools/sound/build_samplebank/CMakeLists.txt | 2 +-
code/nel/tools/sound/build_sound/CMakeLists.txt | 2 +-
.../tools/sound/build_soundbank/CMakeLists.txt | 2 +-
100 files changed, 124 insertions(+), 108 deletions(-)
diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt
index 3f5fa94d5..07bd52eba 100644
--- a/code/CMakeLists.txt
+++ b/code/CMakeLists.txt
@@ -230,7 +230,7 @@ IF(WIN32)
"${QT_LIBRARY_DIR}/../bin/QtGuid4.dll"
"${QT_LIBRARY_DIR}/../bin/QtXmld4.dll"
"${QT_LIBRARY_DIR}/../bin/QtCored4.dll"
- DESTINATION bin)
+ DESTINATION ${NL_BIN_PREFIX})
ENDIF(WITH_QT)
ELSE(NOT CMAKE_BUILD_TYPE STREQUAL "Release")
IF(WITH_QT)
@@ -239,18 +239,18 @@ IF(WIN32)
"${QT_LIBRARY_DIR}/../bin/QtGui4.dll"
"${QT_LIBRARY_DIR}/../bin/QtXml4.dll"
"${QT_LIBRARY_DIR}/../bin/QtCore4.dll"
- DESTINATION bin)
+ DESTINATION ${NL_BIN_PREFIX})
ENDIF(WITH_QT)
ENDIF(NOT CMAKE_BUILD_TYPE STREQUAL "Release")
# Install CEGUI and its dependencies.
IF(WITH_NEL_CEGUI)
- INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIBase.dll" DESTINATION bin)
- INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIDevilImageCodec.dll" DESTINATION bin)
- INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIExpatParser.dll" DESTINATION bin)
- INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIFalagardWRBase.dll" DESTINATION bin)
- INSTALL(FILES "${CEGUI_LIB_DIR}/Devil.dll" DESTINATION bin)
- INSTALL(FILES "${CEGUI_LIB_DIR}/ILU.dll" DESTINATION bin)
+ INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIBase.dll" DESTINATION ${NL_BIN_PREFIX})
+ INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIDevilImageCodec.dll" DESTINATION ${NL_BIN_PREFIX})
+ INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIExpatParser.dll" DESTINATION ${NL_BIN_PREFIX})
+ INSTALL(FILES "${CEGUI_LIB_DIR}/CEGUIFalagardWRBase.dll" DESTINATION ${NL_BIN_PREFIX})
+ INSTALL(FILES "${CEGUI_LIB_DIR}/Devil.dll" DESTINATION ${NL_BIN_PREFIX})
+ INSTALL(FILES "${CEGUI_LIB_DIR}/ILU.dll" DESTINATION ${NL_BIN_PREFIX})
ENDIF(WITH_NEL_CEGUI)
# Only the tools require MFC.
diff --git a/code/nel/samples/3d/cegui/CMakeLists.txt b/code/nel/samples/3d/cegui/CMakeLists.txt
index b9afa5729..3a8650a19 100644
--- a/code/nel/samples/3d/cegui/CMakeLists.txt
+++ b/code/nel/samples/3d/cegui/CMakeLists.txt
@@ -10,7 +10,7 @@ TARGET_LINK_LIBRARIES(nl_sample_cegui ${CEGUI_LIBRARY} nelmisc nel3d)
NL_DEFAULT_PROPS(nl_sample_cegui "NeL, Samples, 3D: NeL CEGUI Demo")
NL_ADD_RUNTIME_FLAGS(nl_sample_cegui)
-INSTALL(TARGETS nl_sample_cegui RUNTIME DESTINATION bin COMPONENT samples3d)
+INSTALL(TARGETS nl_sample_cegui RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samples3d)
INSTALL(DIRECTORY datafiles/
DESTINATION ${NL_SHARE_PREFIX}/nl_sample_cegui/datafiles
COMPONENT samples3d
diff --git a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
index 3acb450c5..ad8bdb98d 100644
--- a/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
+++ b/code/nel/samples/3d/cluster_viewer/CMakeLists.txt
@@ -8,7 +8,7 @@ TARGET_LINK_LIBRARIES(nl_sample_clusterview nelmisc nel3d)
NL_ADD_RUNTIME_FLAGS(nl_sample_clusterview)
NL_DEFAULT_PROPS(nl_sample_clusterview "NeL, Samples, 3D: Cluster Viewer")
-INSTALL(TARGETS nl_sample_clusterview RUNTIME DESTINATION bin COMPONENT samples3d)
+INSTALL(TARGETS nl_sample_clusterview RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samples3d)
INSTALL(FILES main.cvs readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview COMPONENT samples3d)
INSTALL(DIRECTORY groups/
DESTINATION ${NL_SHARE_PREFIX}/nl_sample_clusterview/groups
diff --git a/code/nel/samples/3d/font/CMakeLists.txt b/code/nel/samples/3d/font/CMakeLists.txt
index eb01575da..a944ef643 100644
--- a/code/nel/samples/3d/font/CMakeLists.txt
+++ b/code/nel/samples/3d/font/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(nl_sample_font nelmisc nel3d)
NL_DEFAULT_PROPS(nl_sample_font "NeL, Samples, 3D: Font")
NL_ADD_RUNTIME_FLAGS(nl_sample_font)
-INSTALL(TARGETS nl_sample_font RUNTIME DESTINATION bin COMPONENT samples3d)
+INSTALL(TARGETS nl_sample_font RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samples3d)
INSTALL(FILES beteckna.ttf DESTINATION ${NL_SHARE_PREFIX}/nl_sample_font COMPONENT samples3d)
diff --git a/code/nel/samples/3d/qtnel/CMakeLists.txt b/code/nel/samples/3d/qtnel/CMakeLists.txt
index 5b996a33e..1730cd4b3 100644
--- a/code/nel/samples/3d/qtnel/CMakeLists.txt
+++ b/code/nel/samples/3d/qtnel/CMakeLists.txt
@@ -27,5 +27,5 @@ NL_ADD_RUNTIME_FLAGS(qtnel)
ADD_DEFINITIONS(${QT_DEFINITIONS})
-INSTALL(TARGETS qtnel RUNTIME DESTINATION bin COMPONENT samples3d)
+INSTALL(TARGETS qtnel RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samples3d)
diff --git a/code/nel/samples/3d/shape_viewer/CMakeLists.txt b/code/nel/samples/3d/shape_viewer/CMakeLists.txt
index 57f2ddd5a..9262a7cd7 100644
--- a/code/nel/samples/3d/shape_viewer/CMakeLists.txt
+++ b/code/nel/samples/3d/shape_viewer/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_shapeview nelmisc nel3d)
NL_DEFAULT_PROPS(nl_sample_shapeview "NeL, Samples, 3D: Shape Viewer")
NL_ADD_RUNTIME_FLAGS(nl_sample_shapeview)
-INSTALL(TARGETS nl_sample_shapeview RUNTIME DESTINATION bin COMPONENT samples3d)
+INSTALL(TARGETS nl_sample_shapeview RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samples3d)
diff --git a/code/nel/samples/georges/CMakeLists.txt b/code/nel/samples/georges/CMakeLists.txt
index 474575337..ed83e9ce3 100644
--- a/code/nel/samples/georges/CMakeLists.txt
+++ b/code/nel/samples/georges/CMakeLists.txt
@@ -8,6 +8,6 @@ TARGET_LINK_LIBRARIES(nl_sample_georges nelgeorges nelmisc)
NL_DEFAULT_PROPS(nl_sample_georges "NeL, Samples: Georges")
NL_ADD_RUNTIME_FLAGS(nl_sample_georges)
-INSTALL(TARGETS nl_sample_georges RUNTIME DESTINATION bin COMPONENT samplesgeorges)
+INSTALL(TARGETS nl_sample_georges RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesgeorges)
INSTALL(FILES boolean.typ coolfilesinfo.dfn default.sample_config int.typ positiondata.dfn sample_config.dfn string.typ sheet_id.bin
DESTINATION ${NL_SHARE_PREFIX}/nl_sample_georges/ COMPONENT samplesgeorges)
diff --git a/code/nel/samples/misc/command/CMakeLists.txt b/code/nel/samples/misc/command/CMakeLists.txt
index 5ffe1f42d..8069e8bd0 100644
--- a/code/nel/samples/misc/command/CMakeLists.txt
+++ b/code/nel/samples/misc/command/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_command nelmisc)
NL_DEFAULT_PROPS(nl_sample_command "NeL, Samples, Misc: Commands")
NL_ADD_RUNTIME_FLAGS(nl_sample_command)
-INSTALL(TARGETS nl_sample_command RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_command RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/configfile/CMakeLists.txt b/code/nel/samples/misc/configfile/CMakeLists.txt
index 723f65b29..3d29c082c 100644
--- a/code/nel/samples/misc/configfile/CMakeLists.txt
+++ b/code/nel/samples/misc/configfile/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(nl_sample_configfile nelmisc)
NL_DEFAULT_PROPS(nl_sample_configfile "NeL, Samples, Misc: Config Files")
NL_ADD_RUNTIME_FLAGS(nl_sample_configfile)
-INSTALL(TARGETS nl_sample_configfile RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_configfile RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
INSTALL(FILES simpletest.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_configfile COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/debug/CMakeLists.txt b/code/nel/samples/misc/debug/CMakeLists.txt
index 16c3ae42b..c2cd617a3 100644
--- a/code/nel/samples/misc/debug/CMakeLists.txt
+++ b/code/nel/samples/misc/debug/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_debug nelmisc)
NL_DEFAULT_PROPS(nl_sample_debug "NeL, Samples, Misc: Debugging")
NL_ADD_RUNTIME_FLAGS(nl_sample_debug)
-INSTALL(TARGETS nl_sample_debug RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_debug RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/i18n/CMakeLists.txt b/code/nel/samples/misc/i18n/CMakeLists.txt
index c5a510201..5238b6180 100644
--- a/code/nel/samples/misc/i18n/CMakeLists.txt
+++ b/code/nel/samples/misc/i18n/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(nl_sample_i18n nelmisc)
NL_DEFAULT_PROPS(nl_sample_i18n "NeL, Samples, Misc: I18N")
NL_ADD_RUNTIME_FLAGS(nl_sample_i18n)
-INSTALL(TARGETS nl_sample_i18n RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_i18n RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
INSTALL(FILES de.uxt en.uxt fr.uxt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_i18n COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/log/CMakeLists.txt b/code/nel/samples/misc/log/CMakeLists.txt
index c106fc00c..dca8c76a8 100644
--- a/code/nel/samples/misc/log/CMakeLists.txt
+++ b/code/nel/samples/misc/log/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_log nelmisc)
NL_DEFAULT_PROPS(nl_sample_log "NeL, Samples, Misc: Logging")
NL_ADD_RUNTIME_FLAGS(nl_sample_log)
-INSTALL(TARGETS nl_sample_log RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_log RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/strings/CMakeLists.txt b/code/nel/samples/misc/strings/CMakeLists.txt
index e0806591b..d4ffc3c1a 100644
--- a/code/nel/samples/misc/strings/CMakeLists.txt
+++ b/code/nel/samples/misc/strings/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_strings nelmisc)
NL_DEFAULT_PROPS(nl_sample_strings "NeL, Samples, Misc: Strings")
NL_ADD_RUNTIME_FLAGS(nl_sample_strings)
-INSTALL(TARGETS nl_sample_strings RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_strings RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
diff --git a/code/nel/samples/misc/types_check/CMakeLists.txt b/code/nel/samples/misc/types_check/CMakeLists.txt
index a8b628979..9b3172eb2 100644
--- a/code/nel/samples/misc/types_check/CMakeLists.txt
+++ b/code/nel/samples/misc/types_check/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_sample_types_check nelmisc)
NL_DEFAULT_PROPS(nl_sample_types_check "Samples, MISC: Types check sample")
NL_ADD_RUNTIME_FLAGS(nl_sample_types_check)
-INSTALL(TARGETS nl_sample_types_check RUNTIME DESTINATION bin COMPONENT samplesmisc)
+INSTALL(TARGETS nl_sample_types_check RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesmisc)
diff --git a/code/nel/samples/net/chat/CMakeLists.txt b/code/nel/samples/net/chat/CMakeLists.txt
index 7db4550d6..b5c66d67c 100644
--- a/code/nel/samples/net/chat/CMakeLists.txt
+++ b/code/nel/samples/net/chat/CMakeLists.txt
@@ -12,5 +12,5 @@ TARGET_LINK_LIBRARIES(nl_sample_chatserver nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_chatserver "NeL, Samples, Net, Chat: Chat Server")
NL_ADD_RUNTIME_FLAGS(nl_sample_chatserver)
-INSTALL(TARGETS nl_sample_chatclient nl_sample_chatserver RUNTIME DESTINATION bin COMPONENT samplesnet)
+INSTALL(TARGETS nl_sample_chatclient nl_sample_chatserver RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesnet)
INSTALL(FILES chat_service.cfg client.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_chat COMPONENT samplesnet)
diff --git a/code/nel/samples/net/class_transport/CMakeLists.txt b/code/nel/samples/net/class_transport/CMakeLists.txt
index 3247d0745..3561221d4 100644
--- a/code/nel/samples/net/class_transport/CMakeLists.txt
+++ b/code/nel/samples/net/class_transport/CMakeLists.txt
@@ -12,5 +12,5 @@ TARGET_LINK_LIBRARIES(nl_sample_ct_gd_service nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_ct_gd_service "NeL, Samples, Net, Class Transport: GD Service")
NL_ADD_RUNTIME_FLAGS(nl_sample_ct_gd_service)
-INSTALL(TARGETS nl_sample_ct_ai_service nl_sample_ct_gd_service RUNTIME DESTINATION bin COMPONENT samplesnet)
+INSTALL(TARGETS nl_sample_ct_ai_service nl_sample_ct_gd_service RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesnet)
INSTALL(FILES ai_service.cfg gd_service.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_class_transport COMPONENT samplesnet)
diff --git a/code/nel/samples/net/login_system/CMakeLists.txt b/code/nel/samples/net/login_system/CMakeLists.txt
index 4d83420da..97436fc90 100644
--- a/code/nel/samples/net/login_system/CMakeLists.txt
+++ b/code/nel/samples/net/login_system/CMakeLists.txt
@@ -12,5 +12,5 @@ TARGET_LINK_LIBRARIES(nl_sample_ls_fes nelmisc nelnet)
NL_DEFAULT_PROPS(nl_sample_ls_fes "NeL, Samples, Net, Login Service: LS Frontend")
NL_ADD_RUNTIME_FLAGS(nl_sample_ls_fes)
-INSTALL(TARGETS nl_sample_ls_client nl_sample_ls_fes RUNTIME DESTINATION bin COMPONENT samplesnet)
+INSTALL(TARGETS nl_sample_ls_client nl_sample_ls_fes RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesnet)
INSTALL(FILES frontend_service.cfg client.cfg DESTINATION ${NL_SHARE_PREFIX}/nl_sample_login_system COMPONENT samplesnet)
diff --git a/code/nel/samples/net/udp/CMakeLists.txt b/code/nel/samples/net/udp/CMakeLists.txt
index f47da915c..a4528c4db 100644
--- a/code/nel/samples/net/udp/CMakeLists.txt
+++ b/code/nel/samples/net/udp/CMakeLists.txt
@@ -17,7 +17,7 @@ NL_DEFAULT_PROPS(nl_sample_udpserver "NeL, Samples, Net, UDP: UDP Server")
NL_ADD_RUNTIME_FLAGS(nl_sample_udpclient)
NL_ADD_RUNTIME_FLAGS(nl_sample_udpserver)
-INSTALL(TARGETS nl_sample_udpclient nl_sample_udpserver RUNTIME DESTINATION bin COMPONENT samplesnet)
+INSTALL(TARGETS nl_sample_udpclient nl_sample_udpserver RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplesnet)
INSTALL(FILES bench_service.cfg client.cfg readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_udp COMPONENT samplesnet)
IF(WITH_3D)
diff --git a/code/nel/samples/pacs/CMakeLists.txt b/code/nel/samples/pacs/CMakeLists.txt
index 28b726234..79839c126 100644
--- a/code/nel/samples/pacs/CMakeLists.txt
+++ b/code/nel/samples/pacs/CMakeLists.txt
@@ -8,7 +8,7 @@ TARGET_LINK_LIBRARIES(nl_sample_pacs nelmisc nelpacs nel3d)
NL_DEFAULT_PROPS(nl_sample_pacs "NeL, Samples: PACS")
NL_ADD_RUNTIME_FLAGS(nl_sample_pacs)
-INSTALL(TARGETS nl_sample_pacs RUNTIME DESTINATION bin COMPONENT samplespacs)
+INSTALL(TARGETS nl_sample_pacs RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplespacs)
INSTALL(FILES readme.txt DESTINATION ${NL_SHARE_PREFIX}/nl_sample_pacs COMPONENT samplespacs)
INSTALL(DIRECTORY shapes/
DESTINATION ${NL_SHARE_PREFIX}/nl_sample_pacs/shapes
diff --git a/code/nel/samples/sound/sound_sources/CMakeLists.txt b/code/nel/samples/sound/sound_sources/CMakeLists.txt
index 6a3ea9028..f484c1b76 100644
--- a/code/nel/samples/sound/sound_sources/CMakeLists.txt
+++ b/code/nel/samples/sound/sound_sources/CMakeLists.txt
@@ -10,7 +10,7 @@ TARGET_LINK_LIBRARIES(nl_sample_sound_sources nelmisc nelsound)
NL_DEFAULT_PROPS(nl_sample_sound_sources "NeL, Samples: Sound: Sound Sources")
NL_ADD_RUNTIME_FLAGS(nl_sample_sound_sources)
-INSTALL(TARGETS nl_sample_sound_sources RUNTIME DESTINATION bin COMPONENT samplessound)
+INSTALL(TARGETS nl_sample_sound_sources RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplessound)
INSTALL(DIRECTORY data/
DESTINATION ${NL_SHARE_PREFIX}/nl_sample_sound/data
COMPONENT samplespacs
diff --git a/code/nel/samples/sound/stream_file/CMakeLists.txt b/code/nel/samples/sound/stream_file/CMakeLists.txt
index 5bd39cdb1..e3afd814d 100644
--- a/code/nel/samples/sound/stream_file/CMakeLists.txt
+++ b/code/nel/samples/sound/stream_file/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(nl_sample_stream_file nelmisc nelsound)
NL_DEFAULT_PROPS(nl_sample_stream_file "NeL, Samples: Sound: Stream File")
NL_ADD_RUNTIME_FLAGS(nl_sample_stream_file)
-INSTALL(TARGETS nl_sample_stream_file RUNTIME DESTINATION bin COMPONENT samplessound)
+INSTALL(TARGETS nl_sample_stream_file RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplessound)
diff --git a/code/nel/samples/sound/stream_ogg_vorbis/CMakeLists.txt b/code/nel/samples/sound/stream_ogg_vorbis/CMakeLists.txt
index 6a80d2db7..62f446290 100644
--- a/code/nel/samples/sound/stream_ogg_vorbis/CMakeLists.txt
+++ b/code/nel/samples/sound/stream_ogg_vorbis/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(nl_sample_stream_ogg_vorbis nelmisc nelsound)
NL_DEFAULT_PROPS(nl_sample_stream_ogg_vorbis "NeL, Samples: Sound: Stream OGG Vorbis")
NL_ADD_RUNTIME_FLAGS(nl_sample_stream_ogg_vorbis)
-INSTALL(TARGETS nl_sample_stream_ogg_vorbis RUNTIME DESTINATION bin COMPONENT samplessound)
+INSTALL(TARGETS nl_sample_stream_ogg_vorbis RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT samplessound)
diff --git a/code/nel/src/cegui/CMakeLists.txt b/code/nel/src/cegui/CMakeLists.txt
index 928ebc4cb..b815eb139 100644
--- a/code/nel/src/cegui/CMakeLists.txt
+++ b/code/nel/src/cegui/CMakeLists.txt
@@ -12,5 +12,5 @@ NL_ADD_LIB_SUFFIX(nelceguirenderer)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DNEL_CEGUIRENDERER_EXPORTS)
IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
- INSTALL(TARGETS nelceguirenderer RUNTIME DESTINATION bin LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
+ INSTALL(TARGETS nelceguirenderer RUNTIME DESTINATION ${NL_BIN_PREFIX} LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)
ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/nel/tools/3d/anim_builder/CMakeLists.txt b/code/nel/tools/3d/anim_builder/CMakeLists.txt
index fada1485f..61188b461 100644
--- a/code/nel/tools/3d/anim_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/anim_builder/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(anim_builder nelmisc nel3d)
NL_DEFAULT_PROPS(anim_builder "NeL, Tools, 3D: anim_builder")
NL_ADD_RUNTIME_FLAGS(anim_builder)
-INSTALL(TARGETS anim_builder RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS anim_builder RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/animation_set_builder/CMakeLists.txt b/code/nel/tools/3d/animation_set_builder/CMakeLists.txt
index 8ebf1fff7..da81b1de3 100644
--- a/code/nel/tools/3d/animation_set_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/animation_set_builder/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(animation_set_builder nel3d nelmisc)
NL_DEFAULT_PROPS(animation_set_builder "NeL, Tools, 3D: anim_set_builder")
NL_ADD_RUNTIME_FLAGS(animation_set_builder)
-INSTALL(TARGETS animation_set_builder RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS animation_set_builder RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_clod_bank/CMakeLists.txt b/code/nel/tools/3d/build_clod_bank/CMakeLists.txt
index 3b7704f24..2bd4846d7 100644
--- a/code/nel/tools/3d/build_clod_bank/CMakeLists.txt
+++ b/code/nel/tools/3d/build_clod_bank/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_clod_bank nel3d nelmisc)
NL_DEFAULT_PROPS(build_clod_bank "NeL, Tools, 3D: build_clod_bank")
NL_ADD_RUNTIME_FLAGS(build_clod_bank)
-INSTALL(TARGETS build_clod_bank RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_clod_bank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_clodtex/CMakeLists.txt b/code/nel/tools/3d/build_clodtex/CMakeLists.txt
index a6cefc40c..558962421 100644
--- a/code/nel/tools/3d/build_clodtex/CMakeLists.txt
+++ b/code/nel/tools/3d/build_clodtex/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_clodtex nel3d nelmisc)
NL_DEFAULT_PROPS(build_clodtex "NeL, Tools, 3D: build_clodtex")
NL_ADD_RUNTIME_FLAGS(build_clodtex)
-INSTALL(TARGETS build_clodtex RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_clodtex RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_coarse_mesh/CMakeLists.txt b/code/nel/tools/3d/build_coarse_mesh/CMakeLists.txt
index 2247b01df..93eba1bfc 100644
--- a/code/nel/tools/3d/build_coarse_mesh/CMakeLists.txt
+++ b/code/nel/tools/3d/build_coarse_mesh/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_coarse_mesh nel3d nelmisc)
NL_DEFAULT_PROPS(build_coarse_mesh "NeL, Tools, 3D: build_coarse_mesh")
NL_ADD_RUNTIME_FLAGS(build_coarse_mesh)
-INSTALL(TARGETS build_coarse_mesh RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_coarse_mesh RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_far_bank/CMakeLists.txt b/code/nel/tools/3d/build_far_bank/CMakeLists.txt
index adc3afb08..7a858d560 100644
--- a/code/nel/tools/3d/build_far_bank/CMakeLists.txt
+++ b/code/nel/tools/3d/build_far_bank/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_far_bank nel3d nelmisc)
NL_DEFAULT_PROPS(build_far_bank "NeL, Tools, 3D: build_far_bank")
NL_ADD_RUNTIME_FLAGS(build_far_bank)
-INSTALL(TARGETS build_far_bank RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_far_bank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_interface/CMakeLists.txt b/code/nel/tools/3d/build_interface/CMakeLists.txt
index ce3aae1f1..243bc326d 100644
--- a/code/nel/tools/3d/build_interface/CMakeLists.txt
+++ b/code/nel/tools/3d/build_interface/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_interface nelmisc)
NL_DEFAULT_PROPS(build_interface "NeL, Tools, 3D: build_interface")
NL_ADD_RUNTIME_FLAGS(build_interface)
-INSTALL(TARGETS build_interface RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_interface RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_shadow_skin/CMakeLists.txt b/code/nel/tools/3d/build_shadow_skin/CMakeLists.txt
index 60cc83980..78bbd712d 100644
--- a/code/nel/tools/3d/build_shadow_skin/CMakeLists.txt
+++ b/code/nel/tools/3d/build_shadow_skin/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_shadow_skin nelmisc nel3d)
NL_DEFAULT_PROPS(build_shadow_skin "NeL, Tools, 3D: build_shadow_skin")
NL_ADD_RUNTIME_FLAGS(build_shadow_skin)
-INSTALL(TARGETS build_shadow_skin RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_shadow_skin RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/build_smallbank/CMakeLists.txt b/code/nel/tools/3d/build_smallbank/CMakeLists.txt
index 7cfccdaf9..260f6b9aa 100644
--- a/code/nel/tools/3d/build_smallbank/CMakeLists.txt
+++ b/code/nel/tools/3d/build_smallbank/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(build_smallbank nel3d nelmisc)
NL_DEFAULT_PROPS(build_smallbank "NeL, Tools, 3D: build_smallbank")
NL_ADD_RUNTIME_FLAGS(build_smallbank)
-INSTALL(TARGETS build_smallbank RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS build_smallbank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/cluster_viewer/CMakeLists.txt b/code/nel/tools/3d/cluster_viewer/CMakeLists.txt
index 98d0c800e..a0db8cd68 100644
--- a/code/nel/tools/3d/cluster_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/cluster_viewer/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(cluster_viewer nel3d nelmisc)
NL_DEFAULT_PROPS(cluster_viewer "NeL, Tools, 3D: Cluster Viewer")
NL_ADD_RUNTIME_FLAGS(cluster_viewer)
-INSTALL(TARGETS cluster_viewer RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS cluster_viewer RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/file_info/CMakeLists.txt b/code/nel/tools/3d/file_info/CMakeLists.txt
index ce935c4e4..43cb359fd 100644
--- a/code/nel/tools/3d/file_info/CMakeLists.txt
+++ b/code/nel/tools/3d/file_info/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(file_info nel3d nelmisc)
NL_DEFAULT_PROPS(file_info "NeL, Tools, 3D: file_info")
NL_ADD_RUNTIME_FLAGS(file_info)
-INSTALL(TARGETS file_info RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS file_info RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/get_neighbors/CMakeLists.txt b/code/nel/tools/3d/get_neighbors/CMakeLists.txt
index 9ed4f6e2c..d8de69ff5 100644
--- a/code/nel/tools/3d/get_neighbors/CMakeLists.txt
+++ b/code/nel/tools/3d/get_neighbors/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(get_neighbors nelmisc)
NL_DEFAULT_PROPS(get_neighbors "NeL, Tools, 3D: get_neighbors")
NL_ADD_RUNTIME_FLAGS(get_neighbors)
-INSTALL(TARGETS get_neighbors RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS get_neighbors RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt b/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
index 5b3189b2d..d2482c276 100644
--- a/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
+++ b/code/nel/tools/3d/hls_bank_maker/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(hls_bank_maker s3tc_compressor nelmisc nel3d)
NL_DEFAULT_PROPS(hls_bank_maker "NeL, Tools, 3D: hls_bank_maker")
NL_ADD_RUNTIME_FLAGS(hls_bank_maker)
-INSTALL(TARGETS hls_bank_maker RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS hls_bank_maker RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/ig_add/CMakeLists.txt b/code/nel/tools/3d/ig_add/CMakeLists.txt
index 60f5305c0..2ae993d51 100644
--- a/code/nel/tools/3d/ig_add/CMakeLists.txt
+++ b/code/nel/tools/3d/ig_add/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(ig_add nel3d nelmisc)
NL_DEFAULT_PROPS(ig_add "NeL, Tools, 3D: ig_add")
NL_ADD_RUNTIME_FLAGS(ig_add)
-INSTALL(TARGETS ig_add RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS ig_add RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/ig_elevation/CMakeLists.txt b/code/nel/tools/3d/ig_elevation/CMakeLists.txt
index e453ed1ce..eb59adf22 100644
--- a/code/nel/tools/3d/ig_elevation/CMakeLists.txt
+++ b/code/nel/tools/3d/ig_elevation/CMakeLists.txt
@@ -10,4 +10,4 @@ NL_ADD_RUNTIME_FLAGS(ig_elevation)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ig_elevation RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS ig_elevation RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/ig_info/CMakeLists.txt b/code/nel/tools/3d/ig_info/CMakeLists.txt
index bf39e3e16..59f32f9ca 100644
--- a/code/nel/tools/3d/ig_info/CMakeLists.txt
+++ b/code/nel/tools/3d/ig_info/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(ig_info nel3d nelmisc)
NL_DEFAULT_PROPS(ig_info "NeL, Tools, 3D: ig_info")
NL_ADD_RUNTIME_FLAGS(ig_info)
-INSTALL(TARGETS ig_info RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS ig_info RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/ig_lighter/CMakeLists.txt b/code/nel/tools/3d/ig_lighter/CMakeLists.txt
index 6636329c3..54f703566 100644
--- a/code/nel/tools/3d/ig_lighter/CMakeLists.txt
+++ b/code/nel/tools/3d/ig_lighter/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(ig_lighter nelmisc nel3d nelpacs)
NL_DEFAULT_PROPS(ig_lighter "NeL, Tools, 3D: ig_lighter")
NL_ADD_RUNTIME_FLAGS(ig_lighter)
-INSTALL(TARGETS ig_lighter RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS ig_lighter RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/lightmap_optimizer/CMakeLists.txt b/code/nel/tools/3d/lightmap_optimizer/CMakeLists.txt
index 0427ba6e4..36e5b2aa4 100644
--- a/code/nel/tools/3d/lightmap_optimizer/CMakeLists.txt
+++ b/code/nel/tools/3d/lightmap_optimizer/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(lightmap_optimizer nel3d nelmisc)
NL_DEFAULT_PROPS(lightmap_optimizer "NeL, Tools, 3D: lightmap_optimizer")
NL_ADD_RUNTIME_FLAGS(lightmap_optimizer)
-INSTALL(TARGETS lightmap_optimizer RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS lightmap_optimizer RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer/CMakeLists.txt
index 15d24ba7a..f99f49c68 100644
--- a/code/nel/tools/3d/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer/CMakeLists.txt
@@ -21,8 +21,8 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(object_viewer_dll ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.h ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS object_viewer_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES object_viewer.cfg DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS object_viewer_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES object_viewer.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT tools3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS object_viewer_dll RUNTIME DESTINATION maxplugin COMPONENT tools3d)
INSTALL(FILES object_viewer.cfg DESTINATION maxplugin COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_exe/CMakeLists.txt b/code/nel/tools/3d/object_viewer_exe/CMakeLists.txt
index 605030308..d6adb9694 100644
--- a/code/nel/tools/3d/object_viewer_exe/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_exe/CMakeLists.txt
@@ -19,7 +19,7 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(object_viewer ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.h ${CMAKE_CURRENT_SOURCE_DIR}/std_afx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS object_viewer RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS object_viewer RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
IF(WITH_MAXPLUGIN)
INSTALL(TARGETS object_viewer RUNTIME DESTINATION maxplugin COMPONENT tools3d)
ENDIF(WITH_MAXPLUGIN)
diff --git a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
index 7ee463688..ff1128b9f 100644
--- a/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/CMakeLists.txt
@@ -9,13 +9,16 @@
IF(WIN32)
SET(OVQT_PLUGIN_SPECS_DIR "plugins")
SET(OVQT_PLUGIN_DIR "plugins")
+ SET(OVQT_DATA_DIR ".")
ELSEIF(APPLE)
# TODO: under Mac OS X, don't install but copy files in application package
SET(OVQT_PLUGIN_SPECS_DIR "plugins")
SET(OVQT_PLUGIN_DIR "plugins")
+ SET(OVQT_DATA_DIR ".")
ELSE(WIN32)
SET(OVQT_PLUGIN_SPECS_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/plugins)
SET(OVQT_PLUGIN_DIR ${NL_LIB_PREFIX}/object_viewer_qt)
+ SET(OVQT_DATA_DIR ${NL_SHARE_PREFIX}/object_viewer_qt/data)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/ovqt_config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/ovqt_config.h)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
@@ -30,7 +33,7 @@ ENDIF()
ADD_SUBDIRECTORY(src)
INSTALL(DIRECTORY data/
- DESTINATION ${NL_SHARE_PREFIX}/object_viewer_qt/data
+ DESTINATION ${OVQT_DATA_DIR}
COMPONENT data
PATTERN "CVS" EXCLUDE
PATTERN ".svn" EXCLUDE
diff --git a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
index 099408caa..d77b0e6a1 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt
@@ -50,4 +50,4 @@ NL_ADD_RUNTIME_FLAGS(object_viewer_qt)
ADD_SUBDIRECTORY(plugins)
-INSTALL(TARGETS object_viewer_qt RUNTIME DESTINATION bin COMPONENT runtime BUNDLE DESTINATION /Applications)
+INSTALL(TARGETS object_viewer_qt RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT runtime BUNDLE DESTINATION /Applications)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
index f1cc41b40..2991da073 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/bnp_manager/CMakeLists.txt
@@ -44,6 +44,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_bnp_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_bnp_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_bnp_manager.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
index 242a16262..17172c488 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/CMakeLists.txt
@@ -55,6 +55,19 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_core)
ADD_DEFINITIONS(-DCORE_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT tools3d)
+IF(WIN32)
+ IF(WITH_INSTALL_LIBRARIES)
+ INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+ ELSE(WITH_INSTALL_LIBRARIES)
+ INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+ ENDIF(WITH_INSTALL_LIBRARIES)
+ELSE(WIN32)
+ IF(WITH_INSTALL_LIBRARIES)
+ INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
+ ELSE(WITH_INSTALL_LIBRARIES)
+ INSTALL(TARGETS ovqt_plugin_core LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
+ ENDIF(WITH_INSTALL_LIBRARIES)
+ENDIF(WIN32)
+
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_core.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
index d22f4bb03..f7bb49daf 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/disp_sheet_id/CMakeLists.txt
@@ -40,6 +40,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_disp_sheet_id)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_disp_sheet_id LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_disp_sheet_id.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
index 6cdcd2138..4b24a0363 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/CMakeLists.txt
@@ -38,6 +38,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_example)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_example LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_example.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
index caeb6fc7d..514657535 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/georges_editor/CMakeLists.txt
@@ -44,6 +44,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_georges_editor)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_georges_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_georges_editor.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
index 2e1ee0473..dc7a8a541 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/landscape_editor/CMakeLists.txt
@@ -45,6 +45,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_landscape_editor)
ADD_DEFINITIONS(-DLANDSCAPE_EDITOR_LIBRARY ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_landscape_editor LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_landscape_editor.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
index 22526259f..1e0511a1c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/log/CMakeLists.txt
@@ -36,6 +36,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_log)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_log LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_log.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
index 44693552d..03f1a6a2f 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/CMakeLists.txt
@@ -46,6 +46,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_mission_compiler)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_mission_compiler LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_mission_compiler.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
index 0e2d84c71..b5af7f1e9 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt
@@ -163,6 +163,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_object_viewer)
ADD_DEFINITIONS(-DQT_NO_KEYWORDS ${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_object_viewer.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
index 5efc09bba..52965a3d4 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/ovqt_sheet_builder/CMakeLists.txt
@@ -29,6 +29,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_sheet_builder)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_sheet_builder LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_sheet_builder.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
index be5fefa54..a7de55dfb 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/translation_manager/CMakeLists.txt
@@ -48,6 +48,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_translation_manager)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_translation_manager LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_translation_manager.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
index bfc414832..e9023c4b9 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/CMakeLists.txt
@@ -42,6 +42,6 @@ NL_ADD_LIB_SUFFIX(ovqt_plugin_zone_painter)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
-INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
+INSTALL(TARGETS ovqt_plugin_zone_painter LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ovqt_plugin_zone_painter.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/object_viewer_widget/src/CMakeLists.txt b/code/nel/tools/3d/object_viewer_widget/src/CMakeLists.txt
index 160aca337..0943f61fa 100644
--- a/code/nel/tools/3d/object_viewer_widget/src/CMakeLists.txt
+++ b/code/nel/tools/3d/object_viewer_widget/src/CMakeLists.txt
@@ -39,4 +39,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(object_viewer_widget_qt ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
ENDIF(WITH_PCH)
-#INSTALL(TARGETS object_viewer_widget_qt RUNTIME DESTINATION bin COMPONENT runtime BUNDLE DESTINATION /Applications)
+#INSTALL(TARGETS object_viewer_widget_qt RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT runtime BUNDLE DESTINATION /Applications)
diff --git a/code/nel/tools/3d/panoply_maker/CMakeLists.txt b/code/nel/tools/3d/panoply_maker/CMakeLists.txt
index 2b17b4877..8fd25fef6 100644
--- a/code/nel/tools/3d/panoply_maker/CMakeLists.txt
+++ b/code/nel/tools/3d/panoply_maker/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(panoply_maker s3tc_compressor nelmisc nel3d)
NL_DEFAULT_PROPS(panoply_maker "NeL, Tools, 3D: panoply_maker")
NL_ADD_RUNTIME_FLAGS(panoply_maker)
-INSTALL(TARGETS panoply_maker RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS panoply_maker RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/shapes_exporter/CMakeLists.txt b/code/nel/tools/3d/shapes_exporter/CMakeLists.txt
index 725ef3dec..1df5eafa0 100644
--- a/code/nel/tools/3d/shapes_exporter/CMakeLists.txt
+++ b/code/nel/tools/3d/shapes_exporter/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(shapes_exporter nelmisc nel3d)
NL_DEFAULT_PROPS(shapes_exporter "NeL, Tools, 3D: Shapes Exporter")
NL_ADD_RUNTIME_FLAGS(shapes_exporter)
-INSTALL(TARGETS shapes_exporter RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS shapes_exporter RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/tga_2_dds/CMakeLists.txt b/code/nel/tools/3d/tga_2_dds/CMakeLists.txt
index 7f82c18a1..10620af5b 100644
--- a/code/nel/tools/3d/tga_2_dds/CMakeLists.txt
+++ b/code/nel/tools/3d/tga_2_dds/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(tga2dds s3tc_compressor nelmisc nel3d)
NL_DEFAULT_PROPS(tga2dds "NeL, Tools, 3D: tga2dds")
NL_ADD_RUNTIME_FLAGS(tga2dds)
-INSTALL(TARGETS tga2dds RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS tga2dds RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/tga_cut/CMakeLists.txt b/code/nel/tools/3d/tga_cut/CMakeLists.txt
index a4cfaba40..6d0147328 100644
--- a/code/nel/tools/3d/tga_cut/CMakeLists.txt
+++ b/code/nel/tools/3d/tga_cut/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(tga_cut nelmisc)
NL_DEFAULT_PROPS(tga_cut "NeL, Tools, 3D: tga_cut")
NL_ADD_RUNTIME_FLAGS(tga_cut)
-INSTALL(TARGETS tga_cut RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS tga_cut RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/tga_resize/CMakeLists.txt b/code/nel/tools/3d/tga_resize/CMakeLists.txt
index 170415f7d..48642473e 100644
--- a/code/nel/tools/3d/tga_resize/CMakeLists.txt
+++ b/code/nel/tools/3d/tga_resize/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(tga_resize nelmisc)
NL_DEFAULT_PROPS(tga_resize "NeL, Tools, 3D: tga_resize")
NL_ADD_RUNTIME_FLAGS(tga_resize)
-INSTALL(TARGETS tga_resize RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS tga_resize RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/tile_edit/CMakeLists.txt b/code/nel/tools/3d/tile_edit/CMakeLists.txt
index 70c056c39..ea7e1ac77 100644
--- a/code/nel/tools/3d/tile_edit/CMakeLists.txt
+++ b/code/nel/tools/3d/tile_edit/CMakeLists.txt
@@ -17,4 +17,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(tile_edit ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.h ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS tile_edit RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS tile_edit RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/tile_edit_qt/CMakeLists.txt b/code/nel/tools/3d/tile_edit_qt/CMakeLists.txt
index 2348b81bc..18ced90ed 100644
--- a/code/nel/tools/3d/tile_edit_qt/CMakeLists.txt
+++ b/code/nel/tools/3d/tile_edit_qt/CMakeLists.txt
@@ -27,5 +27,5 @@ NL_ADD_RUNTIME_FLAGS(tile_edit_qt)
ADD_DEFINITIONS(${QT_DEFINITIONS})
-INSTALL(TARGETS tile_edit_qt RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS tile_edit_qt RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_check_bind/CMakeLists.txt b/code/nel/tools/3d/zone_check_bind/CMakeLists.txt
index b0b059341..212f7e18b 100644
--- a/code/nel/tools/3d/zone_check_bind/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_check_bind/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_check_bind nel3d nelmisc)
NL_DEFAULT_PROPS(zone_check_bind "NeL, Tools, 3D: zone_check_bind")
NL_ADD_RUNTIME_FLAGS(zone_check_bind)
-INSTALL(TARGETS zone_check_bind RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_check_bind RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_dependencies/CMakeLists.txt b/code/nel/tools/3d/zone_dependencies/CMakeLists.txt
index f841a30c0..9efb49f0e 100644
--- a/code/nel/tools/3d/zone_dependencies/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_dependencies/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_dependencies nel3d nelgeorges nelmisc)
NL_DEFAULT_PROPS(zone_dependencies "NeL, Tools, 3D: zone_dependencies")
NL_ADD_RUNTIME_FLAGS(zone_dependencies)
-INSTALL(TARGETS zone_dependencies RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_dependencies RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_dump/CMakeLists.txt b/code/nel/tools/3d/zone_dump/CMakeLists.txt
index e9f162fb3..8bc10b811 100644
--- a/code/nel/tools/3d/zone_dump/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_dump/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_dump nel3d nelmisc)
NL_DEFAULT_PROPS(zone_dump "NeL, Tools, 3D: zone_dump")
NL_ADD_RUNTIME_FLAGS(zone_dump)
-INSTALL(TARGETS zone_dump RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_dump RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_ig_lighter/CMakeLists.txt b/code/nel/tools/3d/zone_ig_lighter/CMakeLists.txt
index 096469b5e..30f84cea8 100644
--- a/code/nel/tools/3d/zone_ig_lighter/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_ig_lighter/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_ig_lighter nelmisc nel3d)
NL_DEFAULT_PROPS(zone_ig_lighter "NeL, Tools, 3D: zone_ig_lighter")
NL_ADD_RUNTIME_FLAGS(zone_ig_lighter)
-INSTALL(TARGETS zone_ig_lighter RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_ig_lighter RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_lighter/CMakeLists.txt b/code/nel/tools/3d/zone_lighter/CMakeLists.txt
index 816b8a841..e0c15f9e8 100644
--- a/code/nel/tools/3d/zone_lighter/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_lighter/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_lighter nel3d nelgeorges nelmisc)
NL_DEFAULT_PROPS(zone_lighter "NeL, Tools, 3D: zone_lighter")
NL_ADD_RUNTIME_FLAGS(zone_lighter)
-INSTALL(TARGETS zone_lighter RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_lighter RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zone_welder/CMakeLists.txt b/code/nel/tools/3d/zone_welder/CMakeLists.txt
index 2e8acb118..396d22f58 100644
--- a/code/nel/tools/3d/zone_welder/CMakeLists.txt
+++ b/code/nel/tools/3d/zone_welder/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(zone_welder nel3d nelmisc)
NL_DEFAULT_PROPS(zone_welder "NeL, Tools, 3D: zone_welder")
NL_ADD_RUNTIME_FLAGS(zone_welder)
-INSTALL(TARGETS zone_welder RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zone_welder RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
diff --git a/code/nel/tools/3d/zviewer/CMakeLists.txt b/code/nel/tools/3d/zviewer/CMakeLists.txt
index f695534be..a7a5150b7 100644
--- a/code/nel/tools/3d/zviewer/CMakeLists.txt
+++ b/code/nel/tools/3d/zviewer/CMakeLists.txt
@@ -12,6 +12,6 @@ TARGET_LINK_LIBRARIES(zviewer nelmisc nel3d)
NL_DEFAULT_PROPS(zviewer "NeL, Tools, 3D: Zone Viewer")
NL_ADD_RUNTIME_FLAGS(zviewer)
-INSTALL(TARGETS zviewer RUNTIME DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS zviewer RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
INSTALL(FILES zviewer.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT tools3d)
INSTALL(FILES readme.txt DESTINATION ${NL_SHARE_PREFIX}/zviewer COMPONENT tools3d)
diff --git a/code/nel/tools/georges/georges2csv/CMakeLists.txt b/code/nel/tools/georges/georges2csv/CMakeLists.txt
index e64d85772..b52de14ea 100644
--- a/code/nel/tools/georges/georges2csv/CMakeLists.txt
+++ b/code/nel/tools/georges/georges2csv/CMakeLists.txt
@@ -10,4 +10,4 @@ NL_ADD_RUNTIME_FLAGS(georges2csv)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS georges2csv RUNTIME DESTINATION bin COMPONENT toolsgeorges)
+INSTALL(TARGETS georges2csv RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsgeorges)
diff --git a/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt b/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
index f65ff800f..e538799a0 100644
--- a/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
+++ b/code/nel/tools/logic/logic_editor_dll/CMakeLists.txt
@@ -15,4 +15,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(logic_editor_dll ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS logic_editor_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT toolsmisc)
+INSTALL(TARGETS logic_editor_dll LIBRARY DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_BIN_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/logic/logic_editor_exe/CMakeLists.txt b/code/nel/tools/logic/logic_editor_exe/CMakeLists.txt
index 764a0901e..7a210a71a 100644
--- a/code/nel/tools/logic/logic_editor_exe/CMakeLists.txt
+++ b/code/nel/tools/logic/logic_editor_exe/CMakeLists.txt
@@ -10,4 +10,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(logic_editor ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS logic_editor RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS logic_editor RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/memory/memlog/CMakeLists.txt b/code/nel/tools/memory/memlog/CMakeLists.txt
index 9b471519b..f479a1579 100644
--- a/code/nel/tools/memory/memlog/CMakeLists.txt
+++ b/code/nel/tools/memory/memlog/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(memlog nelmisc)
NL_DEFAULT_PROPS(memlog "NeL, Tools, Memory: memlog")
NL_ADD_RUNTIME_FLAGS(memlog)
-INSTALL(TARGETS memlog RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS memlog RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/bnp_make/CMakeLists.txt b/code/nel/tools/misc/bnp_make/CMakeLists.txt
index d0e4c4aa0..d27252fb6 100644
--- a/code/nel/tools/misc/bnp_make/CMakeLists.txt
+++ b/code/nel/tools/misc/bnp_make/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(bnp_make nelmisc)
NL_DEFAULT_PROPS(bnp_make "NeL, Tools, Misc: bnp_make")
NL_ADD_RUNTIME_FLAGS(bnp_make)
-INSTALL(TARGETS bnp_make RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS bnp_make RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/branch_patcher/CMakeLists.txt b/code/nel/tools/misc/branch_patcher/CMakeLists.txt
index 13cd96605..010e7defd 100644
--- a/code/nel/tools/misc/branch_patcher/CMakeLists.txt
+++ b/code/nel/tools/misc/branch_patcher/CMakeLists.txt
@@ -8,4 +8,4 @@ NL_ADD_RUNTIME_FLAGS(branch_patcher)
ADD_DEFINITIONS(${MFC_DEFINITIONS})
-INSTALL(TARGETS branch_patcher RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS branch_patcher RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/data_mirror/CMakeLists.txt b/code/nel/tools/misc/data_mirror/CMakeLists.txt
index 3b87782b5..9727576ba 100644
--- a/code/nel/tools/misc/data_mirror/CMakeLists.txt
+++ b/code/nel/tools/misc/data_mirror/CMakeLists.txt
@@ -8,4 +8,4 @@ NL_ADD_RUNTIME_FLAGS(data_mirror)
ADD_DEFINITIONS(${MFC_DEFINITIONS})
-INSTALL(TARGETS data_mirror RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS data_mirror RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/disp_sheet_id/CMakeLists.txt b/code/nel/tools/misc/disp_sheet_id/CMakeLists.txt
index 13b8cb09a..0ab03d736 100644
--- a/code/nel/tools/misc/disp_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/misc/disp_sheet_id/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(disp_sheet_id nelmisc)
NL_DEFAULT_PROPS(disp_sheet_id "NeL, Tools, Misc: disp_sheet_id")
NL_ADD_RUNTIME_FLAGS(disp_sheet_id)
-INSTALL(TARGETS disp_sheet_id RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS disp_sheet_id RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/exec_timeout/CMakeLists.txt b/code/nel/tools/misc/exec_timeout/CMakeLists.txt
index daadd75d5..18654e169 100644
--- a/code/nel/tools/misc/exec_timeout/CMakeLists.txt
+++ b/code/nel/tools/misc/exec_timeout/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(exec_timeout nelmisc)
NL_DEFAULT_PROPS(exec_timeout "NeL, Tools, Misc: exec_timeout")
NL_ADD_RUNTIME_FLAGS(exec_timeout)
-INSTALL(TARGETS exec_timeout RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS exec_timeout RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/extract_filename/CMakeLists.txt b/code/nel/tools/misc/extract_filename/CMakeLists.txt
index c46e9f1fc..7f20cc6d6 100644
--- a/code/nel/tools/misc/extract_filename/CMakeLists.txt
+++ b/code/nel/tools/misc/extract_filename/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(extract_filename nelmisc)
NL_DEFAULT_PROPS(extract_filename "NeL, Tools, Misc: extract_filename")
NL_ADD_RUNTIME_FLAGS(extract_filename)
-INSTALL(TARGETS extract_filename RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS extract_filename RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/lock/CMakeLists.txt b/code/nel/tools/misc/lock/CMakeLists.txt
index 23771299a..52afeee24 100644
--- a/code/nel/tools/misc/lock/CMakeLists.txt
+++ b/code/nel/tools/misc/lock/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(lock nelmisc)
NL_DEFAULT_PROPS(lock "NeL, Tools, Misc: lock")
NL_ADD_RUNTIME_FLAGS(lock)
-INSTALL(TARGETS lock RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS lock RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/log_analyser/CMakeLists.txt b/code/nel/tools/misc/log_analyser/CMakeLists.txt
index fbc124b91..e852de2bc 100644
--- a/code/nel/tools/misc/log_analyser/CMakeLists.txt
+++ b/code/nel/tools/misc/log_analyser/CMakeLists.txt
@@ -8,4 +8,4 @@ NL_ADD_RUNTIME_FLAGS(log_analyser)
ADD_DEFINITIONS(${MFC_DEFINITIONS})
-INSTALL(TARGETS log_analyser RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS log_analyser RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/log_analyser_plug_ins/extract_warnings/CMakeLists.txt b/code/nel/tools/misc/log_analyser_plug_ins/extract_warnings/CMakeLists.txt
index 5524f1012..9fc570623 100644
--- a/code/nel/tools/misc/log_analyser_plug_ins/extract_warnings/CMakeLists.txt
+++ b/code/nel/tools/misc/log_analyser_plug_ins/extract_warnings/CMakeLists.txt
@@ -8,4 +8,4 @@ NL_ADD_RUNTIME_FLAGS(extract_warnings)
NL_ADD_LIB_SUFFIX(extract_warnings)
-INSTALL(TARGETS extract_warnings RUNTIME DESTINATION bin LIBRARY DESTINATION lib/log_analyser COMPONENT toolsmisc)
+INSTALL(TARGETS extract_warnings RUNTIME DESTINATION ${NL_BIN_PREFIX} LIBRARY DESTINATION lib/log_analyser COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/make_sheet_id/CMakeLists.txt b/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
index 22730ce5c..553f7fddb 100644
--- a/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
+++ b/code/nel/tools/misc/make_sheet_id/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(make_sheet_id nelmisc)
NL_DEFAULT_PROPS(make_sheet_id "NeL, Tools, Misc: make_sheet_id")
NL_ADD_RUNTIME_FLAGS(make_sheet_id)
-INSTALL(TARGETS make_sheet_id RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS make_sheet_id RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
INSTALL(FILES make_sheet_id.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/message_box/CMakeLists.txt b/code/nel/tools/misc/message_box/CMakeLists.txt
index 8aec80959..764071d9d 100644
--- a/code/nel/tools/misc/message_box/CMakeLists.txt
+++ b/code/nel/tools/misc/message_box/CMakeLists.txt
@@ -6,4 +6,4 @@ ADD_EXECUTABLE(message_box WIN32 ${SRC})
NL_DEFAULT_PROPS(message_box "NeL, Tools, Misc: message_box")
NL_ADD_RUNTIME_FLAGS(message_box)
-INSTALL(TARGETS message_box RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS message_box RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/message_box_qt/CMakeLists.txt b/code/nel/tools/misc/message_box_qt/CMakeLists.txt
index f71143341..408bf867e 100644
--- a/code/nel/tools/misc/message_box_qt/CMakeLists.txt
+++ b/code/nel/tools/misc/message_box_qt/CMakeLists.txt
@@ -14,5 +14,5 @@ NL_ADD_RUNTIME_FLAGS(message_box_qt)
ADD_DEFINITIONS(${QT_DEFINITIONS})
-INSTALL(TARGETS message_box_qt RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS message_box_qt RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/multi_cd_setup_fix/CMakeLists.txt b/code/nel/tools/misc/multi_cd_setup_fix/CMakeLists.txt
index 550547cce..3a5f7da4e 100644
--- a/code/nel/tools/misc/multi_cd_setup_fix/CMakeLists.txt
+++ b/code/nel/tools/misc/multi_cd_setup_fix/CMakeLists.txt
@@ -6,4 +6,4 @@ ADD_EXECUTABLE(multi_cd_setup_fix WIN32 ${SRC} multi_cd_setup_fix.rc)
NL_DEFAULT_PROPS(multi_cd_setup_fix "NeL, Tools, Misc: multi_cd_setup_fix")
NL_ADD_RUNTIME_FLAGS(multi_cd_setup_fix)
-INSTALL(TARGETS multi_cd_setup_fix RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS multi_cd_setup_fix RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/probe_timers/CMakeLists.txt b/code/nel/tools/misc/probe_timers/CMakeLists.txt
index df0f34926..cb17490df 100644
--- a/code/nel/tools/misc/probe_timers/CMakeLists.txt
+++ b/code/nel/tools/misc/probe_timers/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(nl_probe_timers nelmisc)
NL_DEFAULT_PROPS(nl_probe_timers "NeL, Tools, Misc: Probe Timers")
NL_ADD_RUNTIME_FLAGS(nl_probe_timers)
-INSTALL(TARGETS nl_probe_timers RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS nl_probe_timers RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/words_dic/CMakeLists.txt b/code/nel/tools/misc/words_dic/CMakeLists.txt
index 1769422e5..c3f3975f2 100644
--- a/code/nel/tools/misc/words_dic/CMakeLists.txt
+++ b/code/nel/tools/misc/words_dic/CMakeLists.txt
@@ -12,4 +12,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(words_dic ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS words_dic RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS words_dic RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/words_dic_qt/CMakeLists.txt b/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
index c112d6885..2f755dfc1 100644
--- a/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
+++ b/code/nel/tools/misc/words_dic_qt/CMakeLists.txt
@@ -27,6 +27,6 @@ NL_ADD_RUNTIME_FLAGS(words_dic_qt)
ADD_DEFINITIONS(${QT_DEFINITIONS})
-INSTALL(TARGETS words_dic_qt RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS words_dic_qt RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
INSTALL(FILES words_dic.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/misc/xml_packer/CMakeLists.txt b/code/nel/tools/misc/xml_packer/CMakeLists.txt
index 70d5a3270..c9dcd4c6b 100644
--- a/code/nel/tools/misc/xml_packer/CMakeLists.txt
+++ b/code/nel/tools/misc/xml_packer/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(xml_packer nelmisc)
NL_DEFAULT_PROPS(xml_packer "NeL, Tools, Misc: xml_packer")
NL_ADD_RUNTIME_FLAGS(xml_packer)
-INSTALL(TARGETS xml_packer RUNTIME DESTINATION bin COMPONENT toolsmisc)
+INSTALL(TARGETS xml_packer RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolsmisc)
diff --git a/code/nel/tools/nel_unit_test/CMakeLists.txt b/code/nel/tools/nel_unit_test/CMakeLists.txt
index 5b2f2d0d4..8c53ff1c6 100644
--- a/code/nel/tools/nel_unit_test/CMakeLists.txt
+++ b/code/nel/tools/nel_unit_test/CMakeLists.txt
@@ -10,4 +10,4 @@ NL_ADD_RUNTIME_FLAGS(nel_unit_test)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} -DNEL_UNIT_BASE="${PROJECT_SOURCE_DIR}/tools/nel_unit_test/")
-INSTALL(TARGETS nel_unit_test RUNTIME DESTINATION bin)
+INSTALL(TARGETS nel_unit_test RUNTIME DESTINATION ${NL_BIN_PREFIX})
diff --git a/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt b/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
index c3d22d8a5..fb2feedbe 100644
--- a/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_ig_boxes/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(build_ig_boxes nelmisc nelpacs nel3d)
NL_DEFAULT_PROPS(build_ig_boxes "NeL, Tools, PACS: build_ig_boxes")
NL_ADD_RUNTIME_FLAGS(build_ig_boxes)
-INSTALL(TARGETS build_ig_boxes RUNTIME DESTINATION bin COMPONENT toolspacs)
+INSTALL(TARGETS build_ig_boxes RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolspacs)
INSTALL(FILES build_ig_boxes.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt b/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
index 8e5f73b2d..85f1984bf 100644
--- a/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_indoor_rbank/CMakeLists.txt
@@ -8,5 +8,5 @@ TARGET_LINK_LIBRARIES(build_indoor_rbank nelmisc nelpacs)
NL_DEFAULT_PROPS(build_indoor_rbank "NeL, Tools, PACS: build_indoor_rbank")
NL_ADD_RUNTIME_FLAGS(build_indoor_rbank)
-INSTALL(TARGETS build_indoor_rbank RUNTIME DESTINATION bin COMPONENT toolspacs)
+INSTALL(TARGETS build_indoor_rbank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolspacs)
INSTALL(FILES build_indoor_rbank.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nel/tools/pacs/build_rbank/CMakeLists.txt b/code/nel/tools/pacs/build_rbank/CMakeLists.txt
index 9c908bce1..b35cb808c 100644
--- a/code/nel/tools/pacs/build_rbank/CMakeLists.txt
+++ b/code/nel/tools/pacs/build_rbank/CMakeLists.txt
@@ -12,5 +12,5 @@ NL_ADD_RUNTIME_FLAGS(build_rbank)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS build_rbank RUNTIME DESTINATION bin COMPONENT toolspacs)
+INSTALL(TARGETS build_rbank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolspacs)
INSTALL(FILES build_rbank.cfg DESTINATION ${NL_ETC_PREFIX} COMPONENT toolspacs)
diff --git a/code/nel/tools/sound/build_samplebank/CMakeLists.txt b/code/nel/tools/sound/build_samplebank/CMakeLists.txt
index e53b54e11..ab427373c 100644
--- a/code/nel/tools/sound/build_samplebank/CMakeLists.txt
+++ b/code/nel/tools/sound/build_samplebank/CMakeLists.txt
@@ -10,4 +10,4 @@ TARGET_LINK_LIBRARIES(build_samplebank nelmisc nelsound)
NL_DEFAULT_PROPS(build_samplebank "NeL, Tools, Sound: build_samplebank")
NL_ADD_RUNTIME_FLAGS(build_samplebank)
-INSTALL(TARGETS build_samplebank RUNTIME DESTINATION bin COMPONENT toolssound)
+INSTALL(TARGETS build_samplebank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolssound)
diff --git a/code/nel/tools/sound/build_sound/CMakeLists.txt b/code/nel/tools/sound/build_sound/CMakeLists.txt
index 5549e4284..7813e4e8f 100644
--- a/code/nel/tools/sound/build_sound/CMakeLists.txt
+++ b/code/nel/tools/sound/build_sound/CMakeLists.txt
@@ -10,4 +10,4 @@ TARGET_LINK_LIBRARIES(build_sound nelmisc nelsound)
NL_DEFAULT_PROPS(build_sound "NeL, Tools, Sound: build_sound")
NL_ADD_RUNTIME_FLAGS(build_sound)
-INSTALL(TARGETS build_sound RUNTIME DESTINATION bin COMPONENT toolssound)
+INSTALL(TARGETS build_sound RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolssound)
diff --git a/code/nel/tools/sound/build_soundbank/CMakeLists.txt b/code/nel/tools/sound/build_soundbank/CMakeLists.txt
index 27148ed26..4431a47b8 100644
--- a/code/nel/tools/sound/build_soundbank/CMakeLists.txt
+++ b/code/nel/tools/sound/build_soundbank/CMakeLists.txt
@@ -10,4 +10,4 @@ TARGET_LINK_LIBRARIES(build_soundbank nelmisc nelsound)
NL_DEFAULT_PROPS(build_soundbank "NeL, Tools, Sound: build_soundbank")
NL_ADD_RUNTIME_FLAGS(build_soundbank)
-INSTALL(TARGETS build_soundbank RUNTIME DESTINATION bin COMPONENT toolssound)
+INSTALL(TARGETS build_soundbank RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT toolssound)
From 8eaf7d889a149dfb06236ed32d7be8b04e8568a4 Mon Sep 17 00:00:00 2001
From: kervala
Date: Thu, 27 Sep 2012 22:17:47 +0200
Subject: [PATCH 037/125] Changed: Use *_PREFIX instead of fixed values with
INSTALL
---
code/ryzom/client/src/seven_zip/CMakeLists.txt | 2 +-
code/ryzom/tools/assoc_mem/CMakeLists.txt | 2 +-
code/ryzom/tools/client/client_patcher/CMakeLists.txt | 2 +-
.../tools/leveldesign/alias_synchronizer/CMakeLists.txt | 4 ++--
code/ryzom/tools/leveldesign/csv_transform/CMakeLists.txt | 2 +-
code/ryzom/tools/leveldesign/export/CMakeLists.txt | 5 +++--
code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt | 2 +-
.../leveldesign/georges_editor_qt/src/CMakeLists.txt | 2 +-
code/ryzom/tools/leveldesign/georges_exe/CMakeLists.txt | 2 +-
.../tools/leveldesign/georges_plugin_sound/CMakeLists.txt | 2 +-
code/ryzom/tools/leveldesign/icon_search/CMakeLists.txt | 2 +-
.../tools/leveldesign/mission_compiler_fe/CMakeLists.txt | 2 +-
.../tools/leveldesign/mission_compiler_lib/CMakeLists.txt | 6 ++++--
code/ryzom/tools/leveldesign/mp_generator/CMakeLists.txt | 2 +-
.../tools/leveldesign/named_items_2_csv/CMakeLists.txt | 2 +-
code/ryzom/tools/leveldesign/prim_export/CMakeLists.txt | 4 ++--
code/ryzom/tools/leveldesign/uni_conv/CMakeLists.txt | 6 +++---
.../leveldesign/world_editor/land_export/CMakeLists.txt | 4 ++--
.../world_editor/land_export_lib/CMakeLists.txt | 5 +++--
.../leveldesign/world_editor/world_editor/CMakeLists.txt | 4 ++--
.../world_editor_fauna_graph_plugin/CMakeLists.txt | 2 +-
.../world_editor/world_editor_graph_plugin/CMakeLists.txt | 2 +-
.../world_editor/world_editor_plugin/CMakeLists.txt | 4 ++--
.../world_editor_primitive_plugin/CMakeLists.txt | 2 +-
.../world_editor_shard_monitor_plugin/CMakeLists.txt | 2 +-
.../world_editor/world_editor_sound_plugin/CMakeLists.txt | 2 +-
code/ryzom/tools/make_alias_file/CMakeLists.txt | 4 ++--
code/ryzom/tools/make_anim_by_race/CMakeLists.txt | 4 ++--
code/ryzom/tools/make_anim_melee_impact/CMakeLists.txt | 4 ++--
code/ryzom/tools/occ2huff/CMakeLists.txt | 2 +-
code/ryzom/tools/patch_gen/CMakeLists.txt | 8 ++++----
code/ryzom/tools/pd_parser/CMakeLists.txt | 4 ++--
code/ryzom/tools/pdr_util/CMakeLists.txt | 4 ++--
code/ryzom/tools/phrase_generator/CMakeLists.txt | 2 +-
code/ryzom/tools/server/ai_build_wmap/CMakeLists.txt | 2 +-
.../tools/server/build_world_packed_col/CMakeLists.txt | 2 +-
code/ryzom/tools/sheet_random_generator/CMakeLists.txt | 2 +-
code/ryzom/tools/sheets_packer/CMakeLists.txt | 2 +-
code/ryzom/tools/skill_extractor/CMakeLists.txt | 4 ++--
code/ryzom/tools/stats_scan/CMakeLists.txt | 4 ++--
code/ryzom/tools/translation_tools/CMakeLists.txt | 4 ++--
code/snowballs2/client/src/CMakeLists.txt | 2 +-
42 files changed, 67 insertions(+), 63 deletions(-)
diff --git a/code/ryzom/client/src/seven_zip/CMakeLists.txt b/code/ryzom/client/src/seven_zip/CMakeLists.txt
index 8cdade76f..cc152757b 100644
--- a/code/ryzom/client/src/seven_zip/CMakeLists.txt
+++ b/code/ryzom/client/src/seven_zip/CMakeLists.txt
@@ -23,5 +23,5 @@ IF(WITH_RYZOM_TOOLS)
NL_DEFAULT_PROPS(7zDec "Ryzom, Tools, Misc: Seven Zip Decoder")
NL_ADD_RUNTIME_FLAGS(7zDec)
- INSTALL(TARGETS 7zDec RUNTIME DESTINATION bin COMPONENT client)
+ INSTALL(TARGETS 7zDec RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
ENDIF(WITH_RYZOM_TOOLS)
diff --git a/code/ryzom/tools/assoc_mem/CMakeLists.txt b/code/ryzom/tools/assoc_mem/CMakeLists.txt
index 5c6fc82a3..97a73c491 100644
--- a/code/ryzom/tools/assoc_mem/CMakeLists.txt
+++ b/code/ryzom/tools/assoc_mem/CMakeLists.txt
@@ -9,4 +9,4 @@ ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
NL_DEFAULT_PROPS(assoc_mem "Ryzom, Tools, Misc: assoc_mem")
NL_ADD_RUNTIME_FLAGS(assoc_mem)
-INSTALL(TARGETS assoc_mem RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS assoc_mem RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/client/client_patcher/CMakeLists.txt b/code/ryzom/tools/client/client_patcher/CMakeLists.txt
index 4a8b47bdf..e5b845e43 100644
--- a/code/ryzom/tools/client/client_patcher/CMakeLists.txt
+++ b/code/ryzom/tools/client/client_patcher/CMakeLists.txt
@@ -36,4 +36,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_client_patcher ${CMAKE_SOURCE_DIR}/ryzom/client/src/stdpch.h ${CMAKE_SOURCE_DIR}/ryzom/client/src/stdpch.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS ryzom_client_patcher RUNTIME DESTINATION games COMPONENT client BUNDLE DESTINATION /Applications)
+INSTALL(TARGETS ryzom_client_patcher RUNTIME DESTINATION ${RYZOM_GAMES_PREFIX} COMPONENT client BUNDLE DESTINATION /Applications)
diff --git a/code/ryzom/tools/leveldesign/alias_synchronizer/CMakeLists.txt b/code/ryzom/tools/leveldesign/alias_synchronizer/CMakeLists.txt
index 6967308dd..2596c1f17 100644
--- a/code/ryzom/tools/leveldesign/alias_synchronizer/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/alias_synchronizer/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(alias_synchronizer ${LIBXML2_LIBRARIES} nelmisc nelligo)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(alias_synchronizer "Ryzom, Tools, Misc: Alias Synchronizer")
+NL_DEFAULT_PROPS(alias_synchronizer "Ryzom, Tools, Misc: Alias Synchronizer")
NL_ADD_RUNTIME_FLAGS(alias_synchronizer)
-INSTALL(TARGETS alias_synchronizer RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS alias_synchronizer RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/csv_transform/CMakeLists.txt b/code/ryzom/tools/leveldesign/csv_transform/CMakeLists.txt
index f9b4ea109..efb10b91c 100644
--- a/code/ryzom/tools/leveldesign/csv_transform/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/csv_transform/CMakeLists.txt
@@ -8,4 +8,4 @@ TARGET_LINK_LIBRARIES(csv_transform nelmisc)
NL_DEFAULT_PROPS(csv_transform "Ryzom, Tools, Misc: CSV Transform")
NL_ADD_RUNTIME_FLAGS(csv_transform)
-INSTALL(TARGETS csv_transform RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS csv_transform RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/export/CMakeLists.txt b/code/ryzom/tools/leveldesign/export/CMakeLists.txt
index c1d34519d..7d93dd7f9 100644
--- a/code/ryzom/tools/leveldesign/export/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/export/CMakeLists.txt
@@ -12,5 +12,6 @@ NL_ADD_LIB_SUFFIX(ryzom_export)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_export LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
-
+IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
+ INSTALL(TARGETS ryzom_export LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
index 99f60aea7..0192615ca 100644
--- a/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_dll/CMakeLists.txt
@@ -16,4 +16,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(georges_dll ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.h ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS georges_dll LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+INSTALL(TARGETS georges_dll LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/georges_editor_qt/src/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_editor_qt/src/CMakeLists.txt
index 869d9d1c4..81327442a 100644
--- a/code/ryzom/tools/leveldesign/georges_editor_qt/src/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_editor_qt/src/CMakeLists.txt
@@ -71,4 +71,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(georges_editor_qt ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS georges_editor_qt RUNTIME DESTINATION bin COMPONENT runtime BUNDLE DESTINATION /Applications)
+INSTALL(TARGETS georges_editor_qt RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT runtime BUNDLE DESTINATION /Applications)
diff --git a/code/ryzom/tools/leveldesign/georges_exe/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_exe/CMakeLists.txt
index 064f1985e..07ac799c9 100644
--- a/code/ryzom/tools/leveldesign/georges_exe/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_exe/CMakeLists.txt
@@ -9,4 +9,4 @@ TARGET_LINK_LIBRARIES(georges_exe nelmisc nelgeorges georges_dll)
NL_DEFAULT_PROPS(georges_exe "Ryzom, Tools, Georges: Georges Exe")
NL_ADD_RUNTIME_FLAGS(georges_exe)
-INSTALL(TARGETS georges_exe RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS georges_exe RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt b/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
index 76f8e63f7..c88246a98 100644
--- a/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/georges_plugin_sound/CMakeLists.txt
@@ -23,4 +23,4 @@ NL_ADD_LIB_SUFFIX(georges_plugin_sound)
ADD_DEFINITIONS(${MFC_DEFINITIONS})
-INSTALL(TARGETS georges_plugin_sound LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+INSTALL(TARGETS georges_plugin_sound LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
diff --git a/code/ryzom/tools/leveldesign/icon_search/CMakeLists.txt b/code/ryzom/tools/leveldesign/icon_search/CMakeLists.txt
index 8e5063f64..c1d2a47e1 100644
--- a/code/ryzom/tools/leveldesign/icon_search/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/icon_search/CMakeLists.txt
@@ -6,4 +6,4 @@ TARGET_LINK_LIBRARIES(icon_search nelmisc)
NL_DEFAULT_PROPS(icon_search "Ryzom, Tools, Misc: Icon Search")
NL_ADD_RUNTIME_FLAGS(icon_search)
-INSTALL(TARGETS icon_search RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS icon_search RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/mission_compiler_fe/CMakeLists.txt b/code/ryzom/tools/leveldesign/mission_compiler_fe/CMakeLists.txt
index 572060089..c8c1211bc 100644
--- a/code/ryzom/tools/leveldesign/mission_compiler_fe/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/mission_compiler_fe/CMakeLists.txt
@@ -13,4 +13,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_mission_compiler_fe ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS ryzom_mission_compiler_fe RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS ryzom_mission_compiler_fe RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt b/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
index 5c5ce949c..23b13be97 100644
--- a/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/mission_compiler_lib/CMakeLists.txt
@@ -14,7 +14,9 @@ NL_DEFAULT_PROPS(ryzom_mission_compiler_lib "Ryzom, Library: Mission Compiler")
NL_ADD_RUNTIME_FLAGS(ryzom_mission_compiler_lib)
NL_ADD_LIB_SUFFIX(ryzom_mission_compiler_lib)
-INSTALL(TARGETS ryzom_mission_compiler_lib LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
+ INSTALL(TARGETS ryzom_mission_compiler_lib LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
FILE(GLOB EXESRC main.cpp)
@@ -24,4 +26,4 @@ TARGET_LINK_LIBRARIES(ryzom_mission_compiler ryzom_mission_compiler_lib)
NL_DEFAULT_PROPS(ryzom_mission_compiler "Ryzom, Tools, Misc: Mission Compiler")
NL_ADD_RUNTIME_FLAGS(ryzom_mission_compiler)
-INSTALL(TARGETS ryzom_mission_compiler RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS ryzom_mission_compiler RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/mp_generator/CMakeLists.txt b/code/ryzom/tools/leveldesign/mp_generator/CMakeLists.txt
index 11b529b8d..7d177bd02 100644
--- a/code/ryzom/tools/leveldesign/mp_generator/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/mp_generator/CMakeLists.txt
@@ -13,4 +13,4 @@ NL_ADD_RUNTIME_FLAGS(mp_generator)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS mp_generator RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS mp_generator RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/named_items_2_csv/CMakeLists.txt b/code/ryzom/tools/leveldesign/named_items_2_csv/CMakeLists.txt
index 8cb16330b..990c1dd08 100644
--- a/code/ryzom/tools/leveldesign/named_items_2_csv/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/named_items_2_csv/CMakeLists.txt
@@ -13,4 +13,4 @@ NL_ADD_RUNTIME_FLAGS(named2csv)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS named2csv RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS named2csv RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/prim_export/CMakeLists.txt b/code/ryzom/tools/leveldesign/prim_export/CMakeLists.txt
index 655209ef0..21fe7166b 100644
--- a/code/ryzom/tools/leveldesign/prim_export/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/prim_export/CMakeLists.txt
@@ -11,7 +11,7 @@ TARGET_LINK_LIBRARIES(prim_export
${LIBXML2_LIBRARIES})
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(prim_export "Ryzom, Tools, World: Primitive Export")
+NL_DEFAULT_PROPS(prim_export "Ryzom, Tools, World: Primitive Export")
NL_ADD_RUNTIME_FLAGS(prim_export)
-INSTALL(TARGETS prim_export RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS prim_export RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/uni_conv/CMakeLists.txt b/code/ryzom/tools/leveldesign/uni_conv/CMakeLists.txt
index b616f7cee..8fc43d376 100644
--- a/code/ryzom/tools/leveldesign/uni_conv/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/uni_conv/CMakeLists.txt
@@ -5,8 +5,8 @@ ADD_EXECUTABLE(uni_conv ${SRC})
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(uni_conv ${LIBXML2_LIBRARIES} nelmisc)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-
-NL_DEFAULT_PROPS(uni_conv "Ryzom, Tools, Misc: Unicode Conversion Tool")
+
+NL_DEFAULT_PROPS(uni_conv "Ryzom, Tools, Misc: Unicode Conversion Tool")
NL_ADD_RUNTIME_FLAGS(uni_conv)
-INSTALL(TARGETS uni_conv RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS uni_conv RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/world_editor/land_export/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/land_export/CMakeLists.txt
index 6ac51f423..3ac1128e9 100644
--- a/code/ryzom/tools/leveldesign/world_editor/land_export/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/land_export/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(land_export ${LIBXML2_LIBRARIES} nelmisc nelligo ryzom_landexport)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(land_export "Ryzom, Tools, World: Land Export")
+NL_DEFAULT_PROPS(land_export "Ryzom, Tools, World: Land Export")
NL_ADD_RUNTIME_FLAGS(land_export)
-INSTALL(TARGETS land_export RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS land_export RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
index 89fb06086..e130751a2 100644
--- a/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/land_export_lib/CMakeLists.txt
@@ -12,5 +12,6 @@ NL_ADD_LIB_SUFFIX(ryzom_landexport)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ryzom_landexport LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
-
+IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
+ INSTALL(TARGETS ryzom_landexport LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT libraries)
+ENDIF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor/CMakeLists.txt
index a490ca0e9..e4790eeea 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor/CMakeLists.txt
@@ -20,11 +20,11 @@ TARGET_LINK_LIBRARIES(world_editor
${LIBXML2_LIBRARIES})
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(world_editor "Ryzom, Tools, World: World Editor")
+NL_DEFAULT_PROPS(world_editor "Ryzom, Tools, World: World Editor")
NL_ADD_RUNTIME_FLAGS(world_editor)
IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(world_editor ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.h ${CMAKE_CURRENT_SOURCE_DIR}/stdafx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS world_editor RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS world_editor RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
index 417ed83b6..3d1f18473 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_fauna_graph_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_fauna_graph_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_fauna_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(TARGETS world_editor_fauna_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
index 3c9e57857..8895ac93b 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_graph_plugin/CMakeLists.txt
@@ -18,5 +18,5 @@ NL_ADD_LIB_SUFFIX(world_editor_graph_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(TARGETS world_editor_graph_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
index 3c93ab01b..81b77c4f1 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_plugin/CMakeLists.txt
@@ -21,6 +21,6 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(world_editor_plugin ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS world_editor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
-INSTALL(FILES WorldEditorPlugin.cfg DESTINATION bin COMPONENT tools3d)
+INSTALL(TARGETS world_editor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(FILES WorldEditorPlugin.cfg DESTINATION ${RYZOM_ETC_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
index 0449ec5d5..d33bd7032 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_primitive_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_primitive_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_primitive_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(TARGETS world_editor_primitive_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
index 64da758a7..c821f5de9 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_shard_monitor_plugin/CMakeLists.txt
@@ -18,5 +18,5 @@ NL_ADD_LIB_SUFFIX(world_editor_shard_monitor_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_shard_monitor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(TARGETS world_editor_shard_monitor_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt b/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
index 9337af50b..997777d56 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor_sound_plugin/CMakeLists.txt
@@ -17,5 +17,5 @@ NL_ADD_LIB_SUFFIX(world_editor_sound_plugin)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${MFC_DEFINITIONS} -DWIN32_DLL_EXPORTS)
-INSTALL(TARGETS world_editor_sound_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
+INSTALL(TARGETS world_editor_sound_plugin LIBRARY DESTINATION ${RYZOM_LIB_PREFIX} RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} ARCHIVE DESTINATION ${RYZOM_LIB_PREFIX} COMPONENT tools3d)
diff --git a/code/ryzom/tools/make_alias_file/CMakeLists.txt b/code/ryzom/tools/make_alias_file/CMakeLists.txt
index 4142dfdcc..3711a6120 100644
--- a/code/ryzom/tools/make_alias_file/CMakeLists.txt
+++ b/code/ryzom/tools/make_alias_file/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(make_alias_file ${LIBXML2_LIBRARIES} nelmisc nelgeorges)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(make_alias_file "Ryzom, Tools, Misc: Make Alias File")
+NL_DEFAULT_PROPS(make_alias_file "Ryzom, Tools, Misc: Make Alias File")
NL_ADD_RUNTIME_FLAGS(make_alias_file)
-INSTALL(TARGETS make_alias_file RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS make_alias_file RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/make_anim_by_race/CMakeLists.txt b/code/ryzom/tools/make_anim_by_race/CMakeLists.txt
index 597eb0bb4..3a67971c3 100644
--- a/code/ryzom/tools/make_anim_by_race/CMakeLists.txt
+++ b/code/ryzom/tools/make_anim_by_race/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(make_anim_by_race ${LIBXML2_LIBRARIES} nelmisc)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(make_anim_by_race "Ryzom, Tools, Misc: Make Anim By Race")
+NL_DEFAULT_PROPS(make_anim_by_race "Ryzom, Tools, Misc: Make Anim By Race")
NL_ADD_RUNTIME_FLAGS(make_anim_by_race)
-INSTALL(TARGETS make_anim_by_race RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS make_anim_by_race RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/make_anim_melee_impact/CMakeLists.txt b/code/ryzom/tools/make_anim_melee_impact/CMakeLists.txt
index 089444aee..7dd34fb7d 100644
--- a/code/ryzom/tools/make_anim_melee_impact/CMakeLists.txt
+++ b/code/ryzom/tools/make_anim_melee_impact/CMakeLists.txt
@@ -3,7 +3,7 @@ FILE(GLOB SRC *.cpp *.h)
ADD_EXECUTABLE(make_anim_melee_impact ${SRC})
TARGET_LINK_LIBRARIES(make_anim_melee_impact nelmisc)
-NL_DEFAULT_PROPS(make_anim_melee_impact "Ryzom, Tools, Misc: Make Anim Melee Impact")
+NL_DEFAULT_PROPS(make_anim_melee_impact "Ryzom, Tools, Misc: Make Anim Melee Impact")
NL_ADD_RUNTIME_FLAGS(make_anim_melee_impact)
-INSTALL(TARGETS make_anim_melee_impact RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS make_anim_melee_impact RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/occ2huff/CMakeLists.txt b/code/ryzom/tools/occ2huff/CMakeLists.txt
index d73db604e..6be696d60 100644
--- a/code/ryzom/tools/occ2huff/CMakeLists.txt
+++ b/code/ryzom/tools/occ2huff/CMakeLists.txt
@@ -13,4 +13,4 @@ NL_ADD_RUNTIME_FLAGS(occ2huff)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS occ2huff RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS occ2huff RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/patch_gen/CMakeLists.txt b/code/ryzom/tools/patch_gen/CMakeLists.txt
index d7407756a..7a5117a60 100644
--- a/code/ryzom/tools/patch_gen/CMakeLists.txt
+++ b/code/ryzom/tools/patch_gen/CMakeLists.txt
@@ -10,10 +10,10 @@ NL_ADD_RUNTIME_FLAGS(patch_gen)
ADD_EXECUTABLE(patch_gen_service WIN32 ${SERVICE_SRC})
TARGET_LINK_LIBRARIES(patch_gen_service ryzom_gameshare nelmisc nelnet nelligo nelgeorges)
-NL_DEFAULT_PROPS(patch_gen_service "Ryzom, Tools: Patch Generator Service")
-NL_ADD_RUNTIME_FLAGS(patch_gen_service)
+NL_DEFAULT_PROPS(patch_gen_service "Ryzom, Tools: Patch Generator Service")
+NL_ADD_RUNTIME_FLAGS(patch_gen_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS patch_gen RUNTIME DESTINATION bin COMPONENT tools)
-INSTALL(TARGETS patch_gen_service RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS patch_gen RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
+INSTALL(TARGETS patch_gen_service RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/pd_parser/CMakeLists.txt b/code/ryzom/tools/pd_parser/CMakeLists.txt
index 1a26f5f46..676c2786a 100644
--- a/code/ryzom/tools/pd_parser/CMakeLists.txt
+++ b/code/ryzom/tools/pd_parser/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(pd_parser ${LIBXML2_LIBRARIES} nelmisc)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(pd_parser "Ryzom, Tools: PD Parser")
+NL_DEFAULT_PROPS(pd_parser "Ryzom, Tools: PD Parser")
NL_ADD_RUNTIME_FLAGS(pd_parser)
-INSTALL(TARGETS pd_parser RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS pd_parser RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/pdr_util/CMakeLists.txt b/code/ryzom/tools/pdr_util/CMakeLists.txt
index ab4ed6aeb..52d2d66d2 100644
--- a/code/ryzom/tools/pdr_util/CMakeLists.txt
+++ b/code/ryzom/tools/pdr_util/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(pdr_util ryzom_gameshare ${LIBXML2_LIBRARIES} nelmisc nelnet nelligo nelgeorges)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(pdr_util "Ryzom, Tools: PDR Utility")
+NL_DEFAULT_PROPS(pdr_util "Ryzom, Tools: PDR Utility")
NL_ADD_RUNTIME_FLAGS(pdr_util)
-INSTALL(TARGETS pdr_util RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS pdr_util RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/phrase_generator/CMakeLists.txt b/code/ryzom/tools/phrase_generator/CMakeLists.txt
index da885c9fa..8e06c8f26 100644
--- a/code/ryzom/tools/phrase_generator/CMakeLists.txt
+++ b/code/ryzom/tools/phrase_generator/CMakeLists.txt
@@ -14,4 +14,4 @@ NL_ADD_RUNTIME_FLAGS(phrase_generator)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS phrase_generator RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS phrase_generator RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/server/ai_build_wmap/CMakeLists.txt b/code/ryzom/tools/server/ai_build_wmap/CMakeLists.txt
index 24c9f5b6b..9cdf3c8cc 100644
--- a/code/ryzom/tools/server/ai_build_wmap/CMakeLists.txt
+++ b/code/ryzom/tools/server/ai_build_wmap/CMakeLists.txt
@@ -15,4 +15,4 @@ NL_ADD_RUNTIME_FLAGS(ai_build_wmap)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-INSTALL(TARGETS ai_build_wmap RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS ai_build_wmap RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/server/build_world_packed_col/CMakeLists.txt b/code/ryzom/tools/server/build_world_packed_col/CMakeLists.txt
index 4a6e8c265..a693108ce 100644
--- a/code/ryzom/tools/server/build_world_packed_col/CMakeLists.txt
+++ b/code/ryzom/tools/server/build_world_packed_col/CMakeLists.txt
@@ -19,4 +19,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(build_world_packed_col ${CMAKE_CURRENT_SOURCE_DIR}/std_header.h ${CMAKE_CURRENT_SOURCE_DIR}/std_header.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS build_world_packed_col RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS build_world_packed_col RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/sheet_random_generator/CMakeLists.txt b/code/ryzom/tools/sheet_random_generator/CMakeLists.txt
index 9f5405d71..5b80507c0 100644
--- a/code/ryzom/tools/sheet_random_generator/CMakeLists.txt
+++ b/code/ryzom/tools/sheet_random_generator/CMakeLists.txt
@@ -18,4 +18,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(sheet_random_generator ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.h ${CMAKE_CURRENT_SOURCE_DIR}/StdAfx.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS sheet_random_generator RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS sheet_random_generator RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/sheets_packer/CMakeLists.txt b/code/ryzom/tools/sheets_packer/CMakeLists.txt
index 48d024774..ab3129d14 100644
--- a/code/ryzom/tools/sheets_packer/CMakeLists.txt
+++ b/code/ryzom/tools/sheets_packer/CMakeLists.txt
@@ -25,4 +25,4 @@ IF(WITH_PCH)
ADD_NATIVE_PRECOMPILED_HEADER(sheets_packer ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
ENDIF(WITH_PCH)
-INSTALL(TARGETS sheets_packer RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS sheets_packer RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/skill_extractor/CMakeLists.txt b/code/ryzom/tools/skill_extractor/CMakeLists.txt
index 76f302fb1..c34de1aa9 100644
--- a/code/ryzom/tools/skill_extractor/CMakeLists.txt
+++ b/code/ryzom/tools/skill_extractor/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(skill_extractor ${LIBXML2_LIBRARIES} nelmisc)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(skill_extractor "Ryzom, Tools, Misc: Skill Extractor")
+NL_DEFAULT_PROPS(skill_extractor "Ryzom, Tools, Misc: Skill Extractor")
NL_ADD_RUNTIME_FLAGS(skill_extractor)
-INSTALL(TARGETS skill_extractor RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS skill_extractor RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/stats_scan/CMakeLists.txt b/code/ryzom/tools/stats_scan/CMakeLists.txt
index 3d49e5fc4..fbb54e449 100644
--- a/code/ryzom/tools/stats_scan/CMakeLists.txt
+++ b/code/ryzom/tools/stats_scan/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(stats_scan ryzom_gameshare ${LIBXML2_LIBRARIES} nelmisc nelnet nelligo nelgeorges)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(stats_scan "Ryzom, Tools, Misc: Stats Scan")
+NL_DEFAULT_PROPS(stats_scan "Ryzom, Tools, Misc: Stats Scan")
NL_ADD_RUNTIME_FLAGS(stats_scan)
-INSTALL(TARGETS stats_scan RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS stats_scan RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/ryzom/tools/translation_tools/CMakeLists.txt b/code/ryzom/tools/translation_tools/CMakeLists.txt
index ddb048f65..29cdd78de 100644
--- a/code/ryzom/tools/translation_tools/CMakeLists.txt
+++ b/code/ryzom/tools/translation_tools/CMakeLists.txt
@@ -6,7 +6,7 @@ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
TARGET_LINK_LIBRARIES(translation_tools ${LIBXML2_LIBRARIES} nelmisc nelligo nelgeorges)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
-NL_DEFAULT_PROPS(translation_tools "Ryzom, Tools, Misc: Translation Tools")
+NL_DEFAULT_PROPS(translation_tools "Ryzom, Tools, Misc: Translation Tools")
NL_ADD_RUNTIME_FLAGS(translation_tools)
-INSTALL(TARGETS translation_tools RUNTIME DESTINATION bin COMPONENT tools)
+INSTALL(TARGETS translation_tools RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
diff --git a/code/snowballs2/client/src/CMakeLists.txt b/code/snowballs2/client/src/CMakeLists.txt
index b08ee3a43..0b402f133 100644
--- a/code/snowballs2/client/src/CMakeLists.txt
+++ b/code/snowballs2/client/src/CMakeLists.txt
@@ -17,4 +17,4 @@ IF(ENABLE_SOUND)
TARGET_LINK_LIBRARIES(snowballs_client ${NELSOUND_LIBRARY})
ENDIF(ENABLE_SOUND)
-INSTALL(TARGETS snowballs_client RUNTIME DESTINATION bin COMPONENT snowballsclient)
+INSTALL(TARGETS snowballs_client RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT snowballsclient)
From 04d9b961bc0bec2e7fd1fb3c0a233915c86cc9b7 Mon Sep 17 00:00:00 2001
From: kervala
Date: Thu, 27 Sep 2012 22:23:06 +0200
Subject: [PATCH 038/125] Changed: Renamed some Linux files to not conflict
with Ryzom package
---
code/ryzom/client/unix/CMakeLists.txt | 20 +++++++++---------
...zom.desktop.in => ryzom_client.desktop.in} | 0
.../unix/{ryzom.png => ryzom_client.png} | Bin
.../unix/{ryzom.xpm => ryzom_client.xpm} | 0
4 files changed, 10 insertions(+), 10 deletions(-)
rename code/ryzom/client/unix/{ryzom.desktop.in => ryzom_client.desktop.in} (100%)
rename code/ryzom/client/unix/{ryzom.png => ryzom_client.png} (100%)
rename code/ryzom/client/unix/{ryzom.xpm => ryzom_client.xpm} (100%)
diff --git a/code/ryzom/client/unix/CMakeLists.txt b/code/ryzom/client/unix/CMakeLists.txt
index fef098783..54f2ed881 100644
--- a/code/ryzom/client/unix/CMakeLists.txt
+++ b/code/ryzom/client/unix/CMakeLists.txt
@@ -1,11 +1,11 @@
-CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/ryzom.desktop.in" "${CMAKE_CURRENT_BINARY_DIR}/ryzom.desktop")
+CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/ryzom_client.desktop.in" "${CMAKE_CURRENT_BINARY_DIR}/ryzom_client.desktop")
-INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/ryzom.desktop" DESTINATION share/applications)
-INSTALL(FILES ryzom.png DESTINATION share/pixmaps)
-INSTALL(FILES ryzom.xpm DESTINATION share/pixmaps)
-INSTALL(FILES ryzom_16x16.png DESTINATION share/icons/hicolor/16x16/apps RENAME ryzom.png)
-INSTALL(FILES ryzom_22x22.png DESTINATION share/icons/hicolor/22x22/apps RENAME ryzom.png)
-INSTALL(FILES ryzom_24x24.png DESTINATION share/icons/hicolor/24x24/apps RENAME ryzom.png)
-INSTALL(FILES ryzom_32x32.png DESTINATION share/icons/hicolor/32x32/apps RENAME ryzom.png)
-INSTALL(FILES ryzom_48x48.png DESTINATION share/icons/hicolor/48x48/apps RENAME ryzom.png)
-INSTALL(FILES ryzom_128x128.png DESTINATION share/icons/hicolor/128x128/apps RENAME ryzom.png)
+INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/ryzom_client.desktop" DESTINATION share/applications)
+INSTALL(FILES ryzom_client.png DESTINATION share/pixmaps)
+INSTALL(FILES ryzom_client.xpm DESTINATION share/pixmaps)
+INSTALL(FILES ryzom_16x16.png DESTINATION share/icons/hicolor/16x16/apps RENAME ryzom_client.png)
+INSTALL(FILES ryzom_22x22.png DESTINATION share/icons/hicolor/22x22/apps RENAME ryzom_client.png)
+INSTALL(FILES ryzom_24x24.png DESTINATION share/icons/hicolor/24x24/apps RENAME ryzom_client.png)
+INSTALL(FILES ryzom_32x32.png DESTINATION share/icons/hicolor/32x32/apps RENAME ryzom_client.png)
+INSTALL(FILES ryzom_48x48.png DESTINATION share/icons/hicolor/48x48/apps RENAME ryzom_client.png)
+INSTALL(FILES ryzom_128x128.png DESTINATION share/icons/hicolor/128x128/apps RENAME ryzom_client.png)
diff --git a/code/ryzom/client/unix/ryzom.desktop.in b/code/ryzom/client/unix/ryzom_client.desktop.in
similarity index 100%
rename from code/ryzom/client/unix/ryzom.desktop.in
rename to code/ryzom/client/unix/ryzom_client.desktop.in
diff --git a/code/ryzom/client/unix/ryzom.png b/code/ryzom/client/unix/ryzom_client.png
similarity index 100%
rename from code/ryzom/client/unix/ryzom.png
rename to code/ryzom/client/unix/ryzom_client.png
diff --git a/code/ryzom/client/unix/ryzom.xpm b/code/ryzom/client/unix/ryzom_client.xpm
similarity index 100%
rename from code/ryzom/client/unix/ryzom.xpm
rename to code/ryzom/client/unix/ryzom_client.xpm
From 6c1f14778eed0b09138f359fbb2097c278497fa2 Mon Sep 17 00:00:00 2001
From: kervala
Date: Thu, 27 Sep 2012 22:25:00 +0200
Subject: [PATCH 039/125] Changed: #825 Remove all warnings when compiling
Ryzom
---
code/nel/src/misc/sheet_id.cpp | 2 +-
.../mission_compiler_main_window.cpp | 2 +-
.../nel/tools/3d/tile_edit_qt/pic/PIC_System.c | 16 ++++++++--------
code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c | 2 +-
code/nel/tools/3d/tile_edit_qt/pic/Pic_JPG.c | 4 ++--
code/nel/tools/3d/tile_edit_qt/pic/Pic_TGA.c | 4 ++--
.../tools/3d/tile_edit_qt/pic/pic_private.h | 18 +++++++++---------
7 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/code/nel/src/misc/sheet_id.cpp b/code/nel/src/misc/sheet_id.cpp
index 0ff90b1f8..9a9b8813f 100644
--- a/code/nel/src/misc/sheet_id.cpp
+++ b/code/nel/src/misc/sheet_id.cpp
@@ -157,7 +157,7 @@ bool CSheetId::buildSheetId(const std::string& sheetName)
{
_FileExtensions.push_back(sheetType);
_DevSheetIdToName.push_back(std::vector());
- typeId = _FileExtensions.size() - 1;
+ typeId = (uint32)_FileExtensions.size() - 1;
_DevTypeNameToId[sheetType] = typeId;
std::string unknownNewType = std::string("unknown." + sheetType);
_DevSheetIdToName[typeId].push_back(unknownNewType);
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/mission_compiler_main_window.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/mission_compiler_main_window.cpp
index 9a3f4fe61..0c791aa7c 100644
--- a/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/mission_compiler_main_window.cpp
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/mission_compiler/mission_compiler_main_window.cpp
@@ -381,7 +381,7 @@ bool MissionCompilerMainWindow::parsePrimForMissions(NLLIGO::IPrimitive const *p
{
std::string value;
// if the node is a mission parse it
- if (prim->getPropertyByName("class",value) && !NLMISC::stricmp(value.c_str(),"mission") )
+ if (prim->getPropertyByName("class",value) && !NLMISC::nlstricmp(value.c_str(),"mission") )
{
std::string name;
prim->getPropertyByName("name",name);
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/PIC_System.c b/code/nel/tools/3d/tile_edit_qt/pic/PIC_System.c
index 4e97fed78..498e5d302 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/PIC_System.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/PIC_System.c
@@ -8,8 +8,8 @@
#define PIC_ERRSIZE 256
-static unsigned long PIC_Sys_MEM_Allocated;
-static unsigned long PIC_Sys_MEM_NbAllocs;
+static size_t PIC_Sys_MEM_Allocated;
+static size_t PIC_Sys_MEM_NbAllocs;
#if defined(__APPLE__)
#define _msize malloc_size
@@ -31,7 +31,7 @@ void *Pic_malloc(unsigned long size)
return(mem);
}
/* ----- */
-void *Pic_calloc(unsigned long count, unsigned long size)
+void *Pic_calloc(size_t count, size_t size)
{
void *mem;
mem=calloc(count,size);
@@ -45,24 +45,24 @@ void *Pic_calloc(unsigned long count, unsigned long size)
/* ----- */
void Pic_free(void *memblock)
{
- unsigned long size;
+ size_t size;
size=_msize(memblock);
PIC_Sys_MEM_Allocated-=size;
PIC_Sys_MEM_NbAllocs--;
free(memblock);
}
/* ----- */
-unsigned long Pic__msize(void *memblock)
+size_t Pic__msize(void *memblock)
{
return(_msize(memblock));
}
/* ----- */
-unsigned long PIC_GetMemNbAllocs(void)
+size_t PIC_GetMemNbAllocs(void)
{
return(PIC_Sys_MEM_NbAllocs);
}
/* ----- */
-unsigned long PIC_GetMemAllocated(void)
+size_t PIC_GetMemAllocated(void)
{
return(PIC_Sys_MEM_Allocated);
}
@@ -74,7 +74,7 @@ static unsigned char PIC_ErrorString[PIC_ERRSIZE];
static unsigned char PIC_Sys_FnctActive=0;
static void (*PIC_Sys_Fnct)(void);
-void Pic_SetError(unsigned char *msg, ...)
+void Pic_SetError(const char *msg, ...)
{
unsigned char curerr[PIC_ERRSIZE],olderr[PIC_ERRSIZE];
va_list args;
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c b/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
index 53dc957f5..1119766da 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/Pic_BMP.c
@@ -117,7 +117,7 @@ unsigned long Pic_BMP_Write( const char *FileName,
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_BMP_Read( unsigned char *FileName,
+unsigned long Pic_BMP_Read( const char *FileName,
unsigned char **ppPal, unsigned char **ppDatas,
unsigned long *pWidth, unsigned long *pHeight,
unsigned long *pDepth)
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/Pic_JPG.c b/code/nel/tools/3d/tile_edit_qt/pic/Pic_JPG.c
index f13f93b13..dc22afadf 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/Pic_JPG.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/Pic_JPG.c
@@ -31,7 +31,7 @@ void my_error_exit(j_common_ptr cinfo)
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_JPG_Read(unsigned char *FileName, unsigned char **ppPal, unsigned char **ppDatas, unsigned long *w, unsigned long *h)
+unsigned long Pic_JPG_Read(const char *FileName, unsigned char **ppPal, unsigned char **ppDatas, unsigned long *w, unsigned long *h)
{
struct jpeg_decompress_struct cinfo;
struct my_error_mgr jerr;
@@ -114,7 +114,7 @@ unsigned long Pic_JPG_Read(unsigned char *FileName, unsigned char **ppPal, unsig
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_JPG_Write(unsigned char *FileName, unsigned long Qual, unsigned char *pDatas, unsigned long w, unsigned long h)
+unsigned long Pic_JPG_Write(const char *FileName, unsigned long Qual, unsigned char *pDatas, unsigned long w, unsigned long h)
{
struct jpeg_compress_struct cinfo;
struct my_error_mgr jerr;
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/Pic_TGA.c b/code/nel/tools/3d/tile_edit_qt/pic/Pic_TGA.c
index 5f598d4eb..4c458dc83 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/Pic_TGA.c
+++ b/code/nel/tools/3d/tile_edit_qt/pic/Pic_TGA.c
@@ -27,7 +27,7 @@ typedef struct TGA_HEADER
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_TGA_Read( unsigned char *FileName,
+unsigned long Pic_TGA_Read( const char *FileName,
unsigned char **ppPal, unsigned char **ppDatas,
unsigned long *pWidth, unsigned long *pHeight,
unsigned long *pDepth)
@@ -140,7 +140,7 @@ unsigned long Pic_TGA_Read( unsigned char *FileName,
/* ---------------------------------------------------------------------------------------------------------------------------------- */
-unsigned long Pic_TGA_Write( unsigned char *FileName,
+unsigned long Pic_TGA_Write( const char *FileName,
unsigned char *pPal,unsigned char *pDatas,
unsigned long w, unsigned long h, unsigned long d)
{
diff --git a/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h b/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
index 53166396d..96b7a0e94 100644
--- a/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
+++ b/code/nel/tools/3d/tile_edit_qt/pic/pic_private.h
@@ -25,28 +25,28 @@ typedef struct PIC_PICTURE
*/
-extern unsigned long Pic_JPG_Read( unsigned char *FileName,
+extern unsigned long Pic_JPG_Read( const char *FileName,
unsigned char **ppPal, unsigned char **ppDatas,
unsigned long *w, unsigned long *h);
-extern unsigned long Pic_JPG_Write( unsigned char *FileName,
+extern unsigned long Pic_JPG_Write( const char *FileName,
unsigned long Qual,
unsigned char *pDatas,
unsigned long w, unsigned long h);
/*
* TGA
*/
-extern unsigned long Pic_TGA_Read( unsigned char *FileName,
+extern unsigned long Pic_TGA_Read( const char *FileName,
unsigned char **ppPal, unsigned char **ppDatas,
unsigned long *pWidth, unsigned long *pHeight,
unsigned long *pDepth);
-extern unsigned long Pic_TGA_Write( unsigned char *FileName,
+extern unsigned long Pic_TGA_Write( const char *FileName,
unsigned char *pPal,unsigned char *pDatas,
unsigned long w, unsigned long h, unsigned long d);
/*
* BMP
*/
-extern unsigned long Pic_BMP_Read( unsigned char *FileName,
+extern unsigned long Pic_BMP_Read( const char *FileName,
unsigned char **ppPal, unsigned char **ppDatas,
unsigned long *pWidth, unsigned long *pHeight,
unsigned long *pDepth);
@@ -57,11 +57,11 @@ extern unsigned long Pic_BMP_Write( const char *FileName,
/*
* System
*/
-extern void* Pic_malloc(unsigned long size);
-extern void* Pic_calloc(unsigned long count, unsigned long size);
+extern void* Pic_malloc(size_t size);
+extern void* Pic_calloc(size_t count, size_t size);
extern void Pic_free(void *memblock);
-extern unsigned long Pic__msize(void *memblock);
-extern void Pic_SetError(unsigned char *msg, ...);
+extern size_t Pic__msize(void *memblock);
+extern void Pic_SetError(const char *msg, ...);
/* ---------------------------------------------------------------------------------------------------------------------------------- */
From b04836f40eb9bf377d43afb23f246016afda9ea6 Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 28 Sep 2012 20:51:53 +0200
Subject: [PATCH 040/125] Fixed: #1444 Add details for user-agent
---
code/ryzom/client/src/libwww.cpp | 33 +++++++++++++++++++++++++++++++-
1 file changed, 32 insertions(+), 1 deletion(-)
diff --git a/code/ryzom/client/src/libwww.cpp b/code/ryzom/client/src/libwww.cpp
index 33e29fab7..4aa31d180 100644
--- a/code/ryzom/client/src/libwww.cpp
+++ b/code/ryzom/client/src/libwww.cpp
@@ -31,6 +31,10 @@ extern "C"
#include "interface_v3/libwww_nel_stream.h"
+#ifdef HAVE_REVISION_H
+#include "revision.h"
+#endif
+
using namespace NLMISC;
/// the cookie value for session identification (nel cookie)
@@ -552,8 +556,35 @@ void initLibWWW()
/* Initiate libwww */
+#if defined(HAVE_X86_64)
+ #define RYZOM_ARCH "x64"
+#elif defined(HAVE_X86)
+ #define RYZOM_ARCH "x86"
+#elif defined(HAVE_ARM)
+ #define RYZOM_ARCH "arm"
+#else
+ #define RYZOM_ARCH "unknow"
+#endif
+
+#if defined(NL_OS_WINDOWS)
+ #define RYZOM_SYSTEM "windows"
+#elif defined(NL_OS_MAC)
+ #define RYZOM_SYSTEM "mac"
+#elif defined(NL_OS_UNIX)
+ #define RYZOM_SYSTEM "unix"
+#else
+ #define RYZOM_SYSTEM "unkown"
+#endif
+ char buffer[256];
+
+#ifdef REVISION
+ sprintf(buffer, "%s.%s-%s-%s", RYZOM_VERSION, REVISION, RYZOM_SYSTEM, RYZOM_ARCH);
+#else
+ sprintf(buffer, "%s-%s-%s", RYZOM_VERSION, RYZOM_SYSTEM, RYZOM_ARCH);
+#endif
+
HTLib_setAppName("Ryzom");
- HTLib_setAppVersion(RYZOM_VERSION);
+ HTLib_setAppVersion(buffer);
/* Set up TCP as transport */
VerifyLibWWW("HTTransport_add", HTTransport_add("buffered_tcp", HT_TP_SINGLE, HTReader_new, HTBufferWriter_new));
From c82a9d7304ea8808b07c5f266a70b597234ebc60 Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 28 Sep 2012 20:52:56 +0200
Subject: [PATCH 041/125] Changed: Use ryzom_client as icons
---
code/ryzom/client/unix/ryzom_client.desktop.in | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/ryzom/client/unix/ryzom_client.desktop.in b/code/ryzom/client/unix/ryzom_client.desktop.in
index 6c967a61c..6520c1039 100644
--- a/code/ryzom/client/unix/ryzom_client.desktop.in
+++ b/code/ryzom/client/unix/ryzom_client.desktop.in
@@ -8,9 +8,9 @@ Comment=Ryzom client
Comment[fr_FR]=Client Ryzom
TryExec=${RYZOM_GAMES_PREFIX}/ryzom_client
Exec=${RYZOM_GAMES_PREFIX}/ryzom_client
-Icon=ryzom
+Icon=ryzom_client
Terminal=false
Hidden=false
Categories=Game;RolePlaying;
-StartupWMClass=ryzom
+StartupWMClass=ryzom_client
X-AppInstall-Package=ryzom-client
From 29359a552e3e85f363ba73d8eb9db3ba7d7542ef Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 29 Sep 2012 12:51:15 +0200
Subject: [PATCH 042/125] Fixed: #1496 Fall back to OpenAL default device
(patch provided by simco, thanks!)
---
code/nel/src/sound/driver/openal/sound_driver_al.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/nel/src/sound/driver/openal/sound_driver_al.cpp b/code/nel/src/sound/driver/openal/sound_driver_al.cpp
index 65af8002c..40ea39d0b 100644
--- a/code/nel/src/sound/driver/openal/sound_driver_al.cpp
+++ b/code/nel/src/sound/driver/openal/sound_driver_al.cpp
@@ -246,7 +246,6 @@ static const ALchar *getDeviceInternal(const std::string &device)
if (AlEnumerateAllExt)
{
const ALchar* deviceNames = alcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);
- // const ALchar* defaultDevice = NULL;
if(!strlen(deviceNames))
{
nldebug("AL: No audio devices");
@@ -291,6 +290,7 @@ void CSoundDriverAL::initDevice(const std::string &device, ISoundDriver::TSoundO
// OpenAL initialization
const ALchar *dev = getDeviceInternal(device);
+ if (!dev) dev = alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER);
nldebug("AL: Opening device: '%s'", dev == NULL ? "NULL" : dev);
_AlDevice = alcOpenDevice(dev);
if (!_AlDevice) throw ESoundDriver("AL: Failed to open device");
From 5c82fcd39c6822a543d522d97affd5919a38db7e Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 29 Sep 2012 14:35:43 +0200
Subject: [PATCH 043/125] Fixed: #1497 optimize the drawing of radar by
removing multiple access to local db (patch provided by yricl, a big thanks!)
---
.../client/src/interface_v3/view_radar.cpp | 41 +++++++++++++++----
.../client/src/interface_v3/view_radar.h | 21 ++++++++--
2 files changed, 52 insertions(+), 10 deletions(-)
diff --git a/code/ryzom/client/src/interface_v3/view_radar.cpp b/code/ryzom/client/src/interface_v3/view_radar.cpp
index 6c5f4eaf4..5f3cb77d1 100644
--- a/code/ryzom/client/src/interface_v3/view_radar.cpp
+++ b/code/ryzom/client/src/interface_v3/view_radar.cpp
@@ -39,6 +39,25 @@ NLMISC_REGISTER_OBJECT(CViewBase, CViewRadar, std::string, "radar");
// ----------------------------------------------------------------------------
+CViewRadar::CViewRadar(const TCtorParam ¶m)
+ : CViewBase(param)
+{
+ CInterfaceManager *pIM = CInterfaceManager::getInstance();
+ CCDBNodeLeaf *pUIMI = pIM->getDbProp( "UI:SAVE:INSCENE:FRIEND:MISSION_ICON" );
+ if (pUIMI)
+ {
+ ICDBNode::CTextId textId;
+ pUIMI->addObserver( &_MissionIconsObs, textId);
+ }
+
+ CCDBNodeLeaf *pUIMMI = pIM->getDbProp( "UI:SAVE:INSCENE:FRIEND:MINI_MISSION_ICON" );
+ if (pUIMMI)
+ {
+ ICDBNode::CTextId textId;
+ pUIMMI->addObserver( &_MiniMissionSpotsObs, textId);
+ }
+}
+
bool CViewRadar::parse(xmlNodePtr cur, CInterfaceGroup * parentGroup)
{
CXMLAutoPtr prop;
@@ -109,8 +128,9 @@ void CViewRadar::draw ()
CEntityCL *user = EntitiesMngr.entity(0);
if (user == NULL) return;
+
CVectorD xyzRef = user->pos();
- CVector dir = user->front();
+ const CVector dir = user->front();
float angle = (float)(atan2(dir.y, dir.x) - (Pi / 2.0));
CMatrix mat;
@@ -124,9 +144,6 @@ void CViewRadar::draw ()
float maxSqrRadius= (float)sqr(_WorldSize/2);
- const bool displayMissionSpots = pIM->getDbProp("UI:SAVE:INSCENE:FRIEND:MISSION_ICON")->getValueBool();
- const bool displayMiniMissionSpots = pIM->getDbProp("UI:SAVE:INSCENE:FRIEND:MINI_MISSION_ICON")->getValueBool();
-
for (sint32 i = 1; i < 256; ++i)
{
CEntityCL *entity = EntitiesMngr.entity(i);
@@ -160,8 +177,8 @@ void CViewRadar::draw ()
// Select the icon to display and draw it
uint spotId = CNPCIconCache::getInstance().getNPCIcon(entity).getSpotId();
CRadarSpotDesc spotDesc = _SpotDescriptions[spotId];
-
- if (!displayMissionSpots)
+
+ if (!_MissionIconsObs._displayMissionSpots)
spotDesc = _SpotDescriptions[0];
if (spotDesc.isMissionSpot)
@@ -171,7 +188,7 @@ void CViewRadar::draw ()
spotId = 4; // to make it over other spots
// Draw it (and make sure mission icons are drawn over regular dot; caution: don't exceed the render layer range)
- if (spotDesc.isMissionSpot && displayMiniMissionSpots)
+ if (spotDesc.isMissionSpot && _MiniMissionSpotsObs._displayMiniMissionSpots)
rVR.drawRotFlipBitmap (_RenderLayer+spotId, _XReal+x-(spotDesc.MTxW/2)+(_WReal/2), _YReal+y-(spotDesc.MTxH/2)+(_HReal/2),
spotDesc.MTxW, spotDesc.MTxH, 0, false, spotDesc.MiniTextureId, col );
else
@@ -185,3 +202,13 @@ void CViewRadar::updateCoords()
{
CViewBase::updateCoords();
}
+
+void CViewRadar::CDBMissionIconqObs::update(ICDBNode *node)
+{
+ _displayMissionSpots = ((CCDBNodeLeaf*)node)->getValueBool();
+}
+
+void CViewRadar::CDBMiniMissionSpotsObs::update(ICDBNode *node)
+{
+ _displayMiniMissionSpots = ((CCDBNodeLeaf*)node)->getValueBool();
+}
diff --git a/code/ryzom/client/src/interface_v3/view_radar.h b/code/ryzom/client/src/interface_v3/view_radar.h
index b2eb31685..0f9fc1a5f 100644
--- a/code/ryzom/client/src/interface_v3/view_radar.h
+++ b/code/ryzom/client/src/interface_v3/view_radar.h
@@ -45,9 +45,7 @@ public:
};
/// Constructor
- CViewRadar(const TCtorParam ¶m) : CViewBase(param)
- {
- }
+ CViewRadar(const TCtorParam ¶m);
bool parse(xmlNodePtr cur,CInterfaceGroup * parentGroup);
@@ -79,7 +77,24 @@ protected:
sint32 MTxH;
};
+private:
CRadarSpotDesc _SpotDescriptions[NbRadarSpotIds];
+
+ class CDBMissionIconqObs : public ICDBNode::IPropertyObserver
+ {
+ public:
+ virtual void update(ICDBNode *node);
+ bool _displayMissionSpots;
+ };
+ CDBMissionIconqObs _MissionIconsObs;
+
+ class CDBMiniMissionSpotsObs : public ICDBNode::IPropertyObserver
+ {
+ public:
+ virtual void update(ICDBNode *node);
+ bool _displayMiniMissionSpots;
+ };
+ CDBMiniMissionSpotsObs _MiniMissionSpotsObs;
};
#endif // RY_VIEW_RADAR_H
From 9bbbb79ba63aa491494d27fb0bd1f02edc1ea702 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 1 Oct 2012 10:07:09 +0200
Subject: [PATCH 044/125] Changed: Synchronization with SVN
---
.../common/src/game_share/time_weather_season/time_and_season.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/ryzom/common/src/game_share/time_weather_season/time_and_season.h b/code/ryzom/common/src/game_share/time_weather_season/time_and_season.h
index be8a77aea..bf08129e8 100644
--- a/code/ryzom/common/src/game_share/time_weather_season/time_and_season.h
+++ b/code/ryzom/common/src/game_share/time_weather_season/time_and_season.h
@@ -31,7 +31,7 @@ const uint RYZOM_WEEK_IN_DAY = 6;
const uint RYZOM_YEAR_IN_DAY = RYZOM_MONTH_IN_DAY*RYZOM_YEAR_IN_MONTH;
const uint RYZOM_CYCLE_IN_MONTH = 12;
-const uint RYZOM_START_YEAR = 2570-1;
+const uint RYZOM_START_YEAR = 2570-2;
const uint RYZOM_START_SPRING = 61;
const uint RYZOM_START_DAY = 1111111;
const uint RYZOM_START_HOUR = 9;
From 0cf5c1f44a1694b91ca8307f9be101591ec35d72 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 1 Oct 2012 10:07:41 +0200
Subject: [PATCH 045/125] Changed: Install data_leveldesign if ryzom_tools are
enabled
---
code/ryzom/common/CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/ryzom/common/CMakeLists.txt b/code/ryzom/common/CMakeLists.txt
index 109876929..1d3c3f844 100644
--- a/code/ryzom/common/CMakeLists.txt
+++ b/code/ryzom/common/CMakeLists.txt
@@ -9,6 +9,6 @@ ADD_SUBDIRECTORY(src)
#INSTALL(TARGETS data_common ARCHIVE DESTINATION ${RYZOM_SHARE_PREFIX}/data)
#INSTALL(FILES "${CMAKE_BINARY_DIR}/share/data_common.bnp" DESTINATION "${RYZOM_SHARE_PREFIX}/data")
-#IF(WITH_RYZOM_TOOLS)
+IF(WITH_RYZOM_TOOLS)
INSTALL(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/data_leveldesign" DESTINATION "${RYZOM_SHARE_PREFIX}")
-#ENDIF(WITH_RYZOM_TOOLS)
+ENDIF(WITH_RYZOM_TOOLS)
From 6f53c4cc2385e6c973a427bb846a83994ba0d398 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 1 Oct 2012 10:08:52 +0200
Subject: [PATCH 046/125] Changed: #878 Fix typos in comments/code
---
code/ryzom/client/src/init.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/ryzom/client/src/init.cpp b/code/ryzom/client/src/init.cpp
index ba6fc74f6..ce6aa535c 100644
--- a/code/ryzom/client/src/init.cpp
+++ b/code/ryzom/client/src/init.cpp
@@ -686,7 +686,7 @@ void prelogInit()
#ifdef NL_OS_WINDOWS
_control87 (_EM_INVALID|_EM_DENORMAL/*|_EM_ZERODIVIDE|_EM_OVERFLOW*/|_EM_UNDERFLOW|_EM_INEXACT, _MCW_EM);
#endif // NL_OS_WINDOWS
-
+
CTime::CTimerInfo timerInfo;
NLMISC::CTime::probeTimerInfo(timerInfo);
if (timerInfo.RequiresSingleCore) // TODO: Also have a FV configuration value to force single core.
From 4a1df6eb663f60300e295a27ddc941335cc367eb Mon Sep 17 00:00:00 2001
From: kervala
Date: Tue, 2 Oct 2012 13:12:13 +0200
Subject: [PATCH 047/125] Changed: #1444 Allow to provide custom revision.h
---
code/CMakeModules/nel.cmake | 33 ++++++++++++++++++++-------------
1 file changed, 20 insertions(+), 13 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 488ad952d..24092cfea 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -30,21 +30,28 @@ MACRO(NL_GEN_REVISION_H)
ADD_DEFINITIONS(-DHAVE_REVISION_H)
SET(HAVE_REVISION_H ON)
- # a custom target that is always built
- ADD_CUSTOM_TARGET(revision ALL
- DEPENDS ${CMAKE_BINARY_DIR}/revision.h)
+ # if already generated
+ IF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
+ # copy it
+ MESSAGE(STATUS "Copying provided revision.h...")
+ FILE(COPY ${CMAKE_SOURCE_DIR}/revision.h DESTINATION ${CMAKE_BINARY_DIR})
+ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
+ # a custom target that is always built
+ ADD_CUSTOM_TARGET(revision ALL
+ DEPENDS ${CMAKE_BINARY_DIR}/revision.h)
- # creates revision.h using cmake script
- ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/revision.h
- COMMAND ${CMAKE_COMMAND}
- -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
- -DROOT_DIR=${CMAKE_SOURCE_DIR}/..
- -P ${CMAKE_SOURCE_DIR}/CMakeModules/GetRevision.cmake)
+ # creates revision.h using cmake script
+ ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/revision.h
+ COMMAND ${CMAKE_COMMAND}
+ -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
+ -DROOT_DIR=${CMAKE_SOURCE_DIR}/..
+ -P ${CMAKE_SOURCE_DIR}/CMakeModules/GetRevision.cmake)
- # revision.h is a generated file
- SET_SOURCE_FILES_PROPERTIES(${CMAKE_BINARY_DIR}/revision.h
- PROPERTIES GENERATED TRUE
- HEADER_FILE_ONLY TRUE)
+ # revision.h is a generated file
+ SET_SOURCE_FILES_PROPERTIES(${CMAKE_BINARY_DIR}/revision.h
+ PROPERTIES GENERATED TRUE
+ HEADER_FILE_ONLY TRUE)
+ ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h.in)
ENDMACRO(NL_GEN_REVISION_H)
From 122fef354c6eadc49825c3bc74c62134699aa03e Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 3 Oct 2012 10:08:56 +0200
Subject: [PATCH 048/125] Changed: Don't check Debian environment variables in
CMake scripts (define options on cmake command-line instead)
---
code/CMakeModules/nel.cmake | 29 ++---------------------------
1 file changed, 2 insertions(+), 27 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 24092cfea..5a2abc665 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -13,11 +13,7 @@ ENDIF(NOT CMAKE_BUILD_TYPE)
MACRO(NL_GEN_PC name)
IF(NOT WIN32 AND WITH_INSTALL_LIBRARIES)
CONFIGURE_FILE(${name}.in "${CMAKE_CURRENT_BINARY_DIR}/${name}")
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/${name}" DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig)
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
- INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/${name}" DESTINATION lib/pkgconfig)
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/${name}" DESTINATION ${NL_LIB_PREFIX}/pkgconfig)
ENDIF(NOT WIN32 AND WITH_INSTALL_LIBRARIES)
ENDMACRO(NL_GEN_PC)
@@ -250,16 +246,7 @@ MACRO(NL_SETUP_DEFAULT_OPTIONS)
###
# Optional support
###
-
- # Check if CMake is launched from a Debian packaging script
- SET(DEB_HOST_GNU_CPU $ENV{DEB_HOST_GNU_CPU})
-
- # Don't strip if generating a .deb
- IF(DEB_HOST_GNU_CPU)
- OPTION(WITH_SYMBOLS "Keep debug symbols in binaries" ON )
- ELSE(DEB_HOST_GNU_CPU)
- OPTION(WITH_SYMBOLS "Keep debug symbols in binaries" OFF)
- ENDIF(DEB_HOST_GNU_CPU)
+ OPTION(WITH_SYMBOLS "Keep debug symbols in binaries" OFF)
IF(WIN32)
OPTION(WITH_STLPORT "With STLport support." ON )
@@ -371,9 +358,6 @@ MACRO(NL_SETUP_BUILD)
ENDIF(HOST_CPU MATCHES "amd64")
# Determine target CPU
- IF(NOT TARGET_CPU)
- SET(TARGET_CPU $ENV{DEB_HOST_GNU_CPU})
- ENDIF(NOT TARGET_CPU)
# If not specified, use the same CPU as host
IF(NOT TARGET_CPU)
@@ -386,9 +370,6 @@ MACRO(NL_SETUP_BUILD)
SET(TARGET_CPU "x86")
ENDIF(TARGET_CPU MATCHES "amd64")
- # DEB_HOST_ARCH_ENDIAN is 'little' or 'big'
- # DEB_HOST_ARCH_BITS is '32' or '64'
-
IF(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang")
SET(CLANG ON)
MESSAGE(STATUS "Using Clang compiler")
@@ -449,12 +430,6 @@ MACRO(NL_SETUP_BUILD)
ENDIF(TARGET_CPU STREQUAL "x86_64")
# Fix library paths suffixes for Debian MultiArch
- SET(DEBIAN_MULTIARCH $ENV{DEB_HOST_MULTIARCH})
-
- IF(DEBIAN_MULTIARCH)
- SET(CMAKE_LIBRARY_ARCHITECTURE ${DEBIAN_MULTIARCH})
- ENDIF(DEBIAN_MULTIARCH)
-
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(CMAKE_LIBRARY_PATH /lib/${CMAKE_LIBRARY_ARCHITECTURE} /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE} ${CMAKE_LIBRARY_PATH})
IF(TARGET_X64)
From af4ed15c36592042ddf715fa86a8bab4896a6c3a Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 3 Oct 2012 22:31:12 +0200
Subject: [PATCH 049/125] Changed: CXXFLAGS and CPPFLAGS support in CMake
Changed: Use LIBRARY_ARCHITECTURE to override CMAKE_LIBRARY_ARCHITECTURE
---
code/CMakeModules/nel.cmake | 32 +++++++++++++++++++++++++++++---
1 file changed, 29 insertions(+), 3 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 5a2abc665..4875be6d6 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -407,28 +407,40 @@ MACRO(NL_SETUP_BUILD)
ENDIF("${HOST_CPU}" STREQUAL "${TARGET_CPU}")
# Use values from environment variables
- SET(PLATFORM_CFLAGS "$ENV{CFLAGS} ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CFLAGS "$ENV{CFLAGS} $ENV{CPPFLAGS} ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CXXFLAGS "$ENV{CXXFLAGS} $ENV{CPPFLAGS} ${PLATFORM_CXXFLAGS}")
SET(PLATFORM_LINKFLAGS "$ENV{LDFLAGS} ${PLATFORM_LINKFLAGS}")
# Remove -g and -O flag because we are managing them ourself
STRING(REPLACE "-g" "" PLATFORM_CFLAGS ${PLATFORM_CFLAGS})
+ STRING(REPLACE "-g" "" PLATFORM_CXXFLAGS ${PLATFORM_CXXFLAGS})
STRING(REGEX REPLACE "-O[0-9s]" "" PLATFORM_CFLAGS ${PLATFORM_CFLAGS})
+ STRING(REGEX REPLACE "-O[0-9s]" "" PLATFORM_CXXFLAGS ${PLATFORM_CXXFLAGS})
# Strip spaces
STRING(STRIP ${PLATFORM_CFLAGS} PLATFORM_CFLAGS)
+ STRING(STRIP ${PLATFORM_CXXFLAGS} PLATFORM_CXXFLAGS)
STRING(STRIP ${PLATFORM_LINKFLAGS} PLATFORM_LINKFLAGS)
IF(TARGET_CPU STREQUAL "x86_64")
SET(TARGET_X64 1)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_X86_64")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_X86_64")
ELSEIF(TARGET_CPU STREQUAL "x86")
SET(TARGET_X86 1)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_X86")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_X86")
ELSEIF(TARGET_CPU STREQUAL "arm")
SET(TARGET_ARM 1)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_ARM")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_ARM")
ENDIF(TARGET_CPU STREQUAL "x86_64")
+ # Override CMAKE_LIBRARY_ARCHITECTURE that is automatically determinated
+ IF(LIBRARY_ARCHITECTURE)
+ SET(CMAKE_LIBRARY_ARCHITECTURE ${LIBRARY_ARCHITECTURE})
+ ENDIF(LIBRARY_ARCHITECTURE)
+
# Fix library paths suffixes for Debian MultiArch
IF(CMAKE_LIBRARY_ARCHITECTURE)
SET(CMAKE_LIBRARY_PATH /lib/${CMAKE_LIBRARY_ARCHITECTURE} /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE} ${CMAKE_LIBRARY_PATH})
@@ -461,10 +473,12 @@ MACRO(NL_SETUP_BUILD)
ENDIF(MSVC10)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /W3 /Zm1000 /MP /Gy-")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /W3 /Zm1000 /MP /Gy-")
IF(TARGET_X64)
# Fix a bug with Intellisense
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_WIN64")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} /D_WIN64")
# Fix a compilation error for some big C++ files
SET(MIN_OPTIMIZATIONS "${MIN_OPTIMIZATIONS} /bigobj")
ELSE(TARGET_X64)
@@ -473,7 +487,7 @@ MACRO(NL_SETUP_BUILD)
ENDIF(TARGET_X64)
# Exceptions are only set for C++
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CFLAGS} /EHa")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} /EHa")
IF(WITH_SYMBOLS)
SET(NL_RELEASE_CFLAGS "/Zi ${NL_RELEASE_CFLAGS}")
@@ -494,33 +508,41 @@ MACRO(NL_SETUP_BUILD)
IF(APPLE)
IF(TARGET_CPU STREQUAL "x86")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch i386")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch i386")
ENDIF(TARGET_CPU STREQUAL "x86")
IF(TARGET_CPU STREQUAL "x86_64")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch x86_64")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch x86_64")
ENDIF(TARGET_CPU STREQUAL "x86_64")
ELSE(APPLE)
IF(HOST_CPU STREQUAL "x86_64" AND TARGET_CPU STREQUAL "x86")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -m32 -march=i686")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -m32 -march=i686")
ENDIF(HOST_CPU STREQUAL "x86_64" AND TARGET_CPU STREQUAL "x86")
IF(HOST_CPU STREQUAL "x86" AND TARGET_CPU STREQUAL "x86_64")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -m64")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -m64")
ENDIF(HOST_CPU STREQUAL "x86" AND TARGET_CPU STREQUAL "x86_64")
ENDIF(APPLE)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -D_REENTRANT -pipe -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -D_REENTRANT -pipe -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
IF(NOT ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -ansi")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -ansi")
ENDIF(NOT ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
IF(WITH_COVERAGE)
SET(PLATFORM_CFLAGS "-fprofile-arcs -ftest-coverage ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CXXFLAGS "-fprofile-arcs -ftest-coverage ${PLATFORM_CXXFLAGS}")
ENDIF(WITH_COVERAGE)
IF(APPLE)
SET(PLATFORM_CFLAGS "-gdwarf-2 ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CXXFLAGS "-gdwarf-2 ${PLATFORM_CXXFLAGS}")
ENDIF(APPLE)
IF(APPLE AND XCODE)
@@ -538,6 +560,7 @@ MACRO(NL_SETUP_BUILD)
IF(CMAKE_OSX_SYSROOT)
SET(PLATFORM_CFLAGS "-isysroot ${CMAKE_OSX_SYSROOT} ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CXXFLAGS "-isysroot ${CMAKE_OSX_SYSROOT} ${PLATFORM_CXXFLAGS}")
ELSE(CMAKE_OSX_SYSROOT)
MESSAGE(FATAL_ERROR "CMAKE_OSX_SYSROOT can't be determinated")
ENDIF(CMAKE_OSX_SYSROOT)
@@ -545,10 +568,12 @@ MACRO(NL_SETUP_BUILD)
IF(CMAKE_OSX_ARCHITECTURES)
FOREACH(_ARCH ${CMAKE_OSX_ARCHITECTURES})
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch ${_ARCH}")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch ${_ARCH}")
ENDFOREACH(_ARCH)
ENDIF(CMAKE_OSX_ARCHITECTURES)
IF(CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG)
SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
ENDIF(CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG)
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-headerpad_max_install_names")
@@ -561,9 +586,10 @@ MACRO(NL_SETUP_BUILD)
# Fix "relocation R_X86_64_32 against.." error on x64 platforms
IF(TARGET_X64 AND WITH_STATIC AND NOT WITH_STATIC_DRIVERS)
SET(PLATFORM_CFLAGS "-fPIC ${PLATFORM_CFLAGS}")
+ SET(PLATFORM_CXXFLAGS "-fPIC ${PLATFORM_CXXFLAGS}")
ENDIF(TARGET_X64 AND WITH_STATIC AND NOT WITH_STATIC_DRIVERS)
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CFLAGS} -ftemplate-depth-48")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -ftemplate-depth-48")
IF(NOT APPLE)
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,--no-undefined -Wl,--as-needed")
From e4e12ff6c4ddb14b2587242e3a521b09404a1be6 Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 5 Oct 2012 14:57:05 +0200
Subject: [PATCH 050/125] Changed: Synchronization with SVN
---
.../src/backup_service/backup_service.cpp | 5 +-
.../src/entities_game_service/admin.cpp | 153 ++++++++++++++++--
.../building_manager/building_physical.cpp | 8 +
.../entities_game_service/client_messages.cpp | 4 +-
.../entities_game_service.cpp | 36 +----
.../guild_manager/guild.cpp | 32 +++-
.../guild_manager/guild.h | 2 +
.../mission_manager/mission_step_kill.cpp | 2 -
.../outpost_manager/outpost_commands.cpp | 6 +-
.../phrase_manager/faber_action.cpp | 2 +-
.../phrase_manager/faber_phrase.cpp | 68 ++++----
.../phrase_manager/fg_extraction_phrase.cpp | 39 +++--
.../player_manager/character.cpp | 117 +++++++++++---
.../player_manager/character.h | 32 ++++
.../player_manager/character_inlines.h | 61 +++++++
.../player_manager/persistent_player_data.cpp | 10 +-
.../pvp_manager/pvp_manager_2.cpp | 27 +++-
.../entities_game_service/zone_manager.cpp | 2 +-
.../server/src/monitor_service/mirrors.h | 2 +-
19 files changed, 475 insertions(+), 133 deletions(-)
diff --git a/code/ryzom/server/src/backup_service/backup_service.cpp b/code/ryzom/server/src/backup_service/backup_service.cpp
index bb0b71d3a..698cbc02f 100644
--- a/code/ryzom/server/src/backup_service/backup_service.cpp
+++ b/code/ryzom/server/src/backup_service/backup_service.cpp
@@ -532,7 +532,10 @@ static CMessage getFileClassImp( CMessage& msgin)
for (uint j=0; j ,[,
vector res;
sint32 x = 0, y = 0, z = 0;
+ sint32 cell = 0;
+
if (get)
{
x = e->getState().X() / 1000;
@@ -1229,6 +1232,10 @@ ENTITY_VARIABLE(Position, "Position of a player (in meter) ,[,
x = entityBase->getState().X + sint32 (cos (entityBase->getState ().Heading) * 2000);
y = entityBase->getState().Y + sint32 (sin (entityBase->getState ().Heading) * 2000);
z = entityBase->getState().Z;
+
+ TDataSetRow dsr = entityBase->getEntityRowId();
+ CMirrorPropValueRO mirrorCell( TheDataset, dsr, DSPropertyCELL );
+ cell = mirrorCell;
}
}
}
@@ -1258,11 +1265,11 @@ ENTITY_VARIABLE(Position, "Position of a player (in meter) ,[,
// season included
uint8 season;
NLMISC::fromString(res[3], season);
- c->teleportCharacter(x,y,z,true, false, 0.f, 0xFF, 0, season);
+ c->teleportCharacter(x,y,z,true, false, 0.f, 0xFF, cell, season);
}
else
{
- c->teleportCharacter(x,y,z,true);
+ c->teleportCharacter(x,y,z,true, false, 0.f, 0xFF, cell);
}
if ( cont )
@@ -3780,7 +3787,7 @@ NLMISC_COMMAND( monitorMissions, "monitor a player missions", "getMissionsBegin() == c->getMissionsEnd() )
+ if ( c->getMissionsBegin() != c->getMissionsEnd() )
{
CCharacter::sendDynamicSystemMessage( c->getEntityRowId() , "CSR_HAS_MISSION" );
return true;
@@ -4014,8 +4021,6 @@ NLMISC_COMMAND (unmuteUniverse, "unmute the univers chat", "getGuildId();
CGuildManager::getInstance()->setGMGuild( guildId );
@@ -4450,8 +4455,8 @@ NLMISC_COMMAND (connectUserChannel, "Connect to user channels", " getUserDynChannel(name);
+ string name = toLower(args[1]);
+ TChanID channel = inst->getUserDynChannel(name);
if (args.size() < 3)
pass = toLower(name);
@@ -4499,6 +4504,38 @@ NLMISC_COMMAND (connectUserChannel, "Connect to user channels", " ")
+{
+ if ((args.size() < 2) || (args.size() > 3))
+ return false;
+ GET_CHARACTER
+
+ CPVPManager2 *inst = CPVPManager2::getInstance();
+
+ string action;
+ string lang = args[1];
+ if (lang != "en" && lang != "fr" && lang != "de" && lang != "ru" && lang != "es")
+ return false;
+
+ TChanID channel = inst->getFactionDynChannel(lang);
+
+ if (channel != DYN_CHAT_INVALID_CHAN)
+ {
+ if (!c->getLangChannel().empty()) {
+ TChanID current_channel = inst->getFactionDynChannel(c->getLangChannel());
+ inst->removeFactionChannelForCharacter(current_channel, c);
+ }
+ inst->addFactionChannelToCharacter(channel, c, true);
+ c->setLangChannel(lang);
+ return true;
+ }
+
+ SM_STATIC_PARAMS_1(params, STRING_MANAGER::literal);
+ params[0].Literal = lang;
+ CCharacter::sendDynamicSystemMessage( eid, "EGS_CHANNEL_INVALID_NAME", params );
+ return false;
+}
+
NLMISC_COMMAND (updateTarget, "Update current target", "")
{
GET_CHARACTER
@@ -4601,9 +4638,15 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " = 6 && args[5] == "1")
+ bool new_separator = false;
+ // New check using HMagic
+ if (args.size() >= 6 && (args[5] == "1" || args[5] == "3"))
new_check = true;
+ // New separator "|"
+ if (args.size() >= 6 && (args[5] == "2" || args[5] == "3"))
+ new_separator = true;
+
bool next_step = false;
if (args.size() >= 7 && args[6] == "1")
next_step = true;
@@ -4680,7 +4723,10 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " command_args;
- NLMISC::splitString(command, "!", command_args);
+ if (new_separator)
+ NLMISC::splitString(command, "|", command_args);
+ else
+ NLMISC::splitString(command, "!", command_args);
if (command_args.empty())
return false;
@@ -5317,8 +5363,10 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " setHairColor(value);
+ if (target)
+ target->setHairColor(value);
+ else
+ return false;
}
//*************************************************
@@ -5468,12 +5516,35 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " getEntityRowId();
- ucstring name = ucstring(c->getName().toString()+"$"+command_args[1]+"$");
+ c->setNewTitle(command_args[1]);
+ string fullname = c->getName().toString()+"$"+command_args[1]+"#"+c->getTagPvPA()+"#"+c->getTagPvPB()+"#"+c->getTagA()+"#"+c->getTagB()+"$";
+ ucstring name;
+ name.fromUtf8(fullname);
+ NLNET::CMessage msgout("CHARACTER_NAME");
+ msgout.serial(row);
+ msgout.serial(name);
+ sendMessageViaMirror("IOS", msgout);
+ }
+
+ //*************************************************
+ //***************** set_tag
+ //*************************************************
+
+ else if (command_args[0] == "set_tag") {
+ if (command_args.size () != 3) return false;
+ TDataSetRow row = c->getEntityRowId();
+ if (command_args[1] == "pvpA") c->setTagPvPA(command_args[2]);
+ if (command_args[1] == "pvpB") c->setTagPvPB(command_args[2]);
+ if (command_args[1] == "A") c->setTagA(command_args[2]);
+ if (command_args[1] == "B") c->setTagB(command_args[2]);
+ string fullname = c->getName().toString()+"$"+c->getNewTitle()+"#"+c->getTagPvPA()+"#"+c->getTagPvPB()+"#"+c->getTagA()+"#"+c->getTagB()+"$";
+ ucstring name;
+ name.fromUtf8(fullname);
NLNET::CMessage msgout("CHARACTER_NAME");
msgout.serial(row);
msgout.serial(name);
@@ -5500,6 +5571,7 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " res;
sint32 x = 0, y = 0, z = 0;
float h = 0;
+ sint32 cell;
if ( value.find(',') != string::npos ) // Position x,y,z,a
{
explode (value, string(","), res);
@@ -5591,6 +5663,10 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " getState().Y + sint32 (sin (entityBase->getState ().Heading) * 2000);
z = entityBase->getState().Z;
h = entityBase->getState().Heading;
+
+ TDataSetRow dsr = entityBase->getEntityRowId();
+ CMirrorPropValueRO mirrorCell( TheDataset, dsr, DSPropertyCELL );
+ cell = mirrorCell;
}
}
}
@@ -5620,7 +5696,7 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " applyRespawnEffects();
}
- c->teleportCharacter(x,y,z,allowPetTp,true,h);
+ c->teleportCharacter(x,y,z,allowPetTp,true,h,0xFF,cell);
if ( cont )
{
@@ -5903,6 +5979,7 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " sendUrl(web_app_url+"&player_eid="+c->getId().toString()+"&event=failed&desc=no_enough_faction_points", getSalt());
+ return true;
}
}
else if (action=="set")
@@ -5941,6 +6018,7 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " sendUrl(web_app_url+"&player_eid="+c->getId().toString()+"&event=failed&desc=no_enough_pvp_points", getSalt());
+ return true;
}
}
else if (action=="set")
@@ -5957,6 +6035,51 @@ NLMISC_COMMAND (webExecCommand, "Execute a web command", " [1=Read/Write,0=ReadOnly(default)]")
{
- if (args.size() != 2) return false;
+ if (args.size() < 2 || args.size() > 3) return false;
GET_CHARACTER
TChanID chanID = DynChatEGS.getChanIDFromName(args[1]);
if (chanID == DYN_CHAT_INVALID_CHAN)
diff --git a/code/ryzom/server/src/entities_game_service/building_manager/building_physical.cpp b/code/ryzom/server/src/entities_game_service/building_manager/building_physical.cpp
index 9e93b7ed9..30374ec3d 100644
--- a/code/ryzom/server/src/entities_game_service/building_manager/building_physical.cpp
+++ b/code/ryzom/server/src/entities_game_service/building_manager/building_physical.cpp
@@ -89,7 +89,15 @@ bool IBuildingPhysical::addUser(CCharacter * user, uint16 roomIdx, uint16 ownerI
return false;
}
+
+ if (user->currentHp() <= 0 )
+ {
+ nlwarning("user %s is dead",user->getId().toString().c_str());
+ return false;
+ }
+
CCharacter *owner;
+
if (ownerIdx < _Players.size())
{
owner = PlayerManager.getChar(_Players[ownerIdx] );
diff --git a/code/ryzom/server/src/entities_game_service/client_messages.cpp b/code/ryzom/server/src/entities_game_service/client_messages.cpp
index 9c40edc4a..58dc114e2 100644
--- a/code/ryzom/server/src/entities_game_service/client_messages.cpp
+++ b/code/ryzom/server/src/entities_game_service/client_messages.cpp
@@ -2078,7 +2078,7 @@ void cbClientSit( NLNET::CMessage& msgin, const std::string &serviceName, NLNET:
}
-// client send a command to chang guild motd
+// client send a command to change guild motd
void cbClientGuildMotd( NLNET::CMessage& msgin, const std::string &serviceName, NLNET::TServiceId serviceId )
{
H_AUTO(cbClientGuildMotd);
@@ -2737,7 +2737,7 @@ void cbClientSetCharacterTitle( NLNET::CMessage& msgin, const std::string & serv
}
// kxu: TODO: check validity of title chosen by player
- c->setTitle( (CHARACTER_TITLE::ECharacterTitle) title );
+ c->setNewTitle(CHARACTER_TITLE::toString((CHARACTER_TITLE::ECharacterTitle)title));
c->registerName();
}
diff --git a/code/ryzom/server/src/entities_game_service/entities_game_service.cpp b/code/ryzom/server/src/entities_game_service/entities_game_service.cpp
index f431372cd..ef0f9404e 100644
--- a/code/ryzom/server/src/entities_game_service/entities_game_service.cpp
+++ b/code/ryzom/server/src/entities_game_service/entities_game_service.cpp
@@ -4321,41 +4321,7 @@ NLMISC_COMMAND(setAllSkillsToValue,"set all skills to value","getSkills();
- skills._Skills[ i ].Base = min( value, (sint32)SkillsTree->SkillsTree[ i ].MaxSkillValue );
- skills._Skills[ i ].Current = skills._Skills[ i ].Base;
- skills._Skills[ i ].MaxLvlReached = skills._Skills[ i ].Base;
-
- // update all parent skill with new max children
- SKILLS::ESkills skillUpdated = (SKILLS::ESkills)i;
- while( SkillsTree->SkillsTree[ skillUpdated ].ParentSkill != SKILLS::unknown )
- {
- if( skills._Skills[ i ].Base > skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxLvlReached )
- {
- skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxLvlReached = skills._Skills[ i ].Base;
- skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].Base = min( skills._Skills[ skillUpdated ].Base, (sint32)SkillsTree->SkillsTree[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxSkillValue );
- skillUpdated = SkillsTree->SkillsTree[ skillUpdated ].ParentSkill;
- }
- else
- {
- break;
- }
- }
-
-// e->_PropertyDatabase.x_setProp( string("CHARACTER_INFO:SKILLS:") + NLMISC::toStringEnum( i ) + string(":SKILL"), skills._Skills[ i ].Base );
- CBankAccessor_PLR::getCHARACTER_INFO().getSKILLS().getArray(i).setSKILL(e->_PropertyDatabase, checkedCast(skills._Skills[ i ].Base) );
-// e->_PropertyDatabase.x_setProp( string("CHARACTER_INFO:SKILLS:") + NLMISC::toStringEnum( i ) + string(":BaseSKILL"), skills._Skills[ i ].Base );
- CBankAccessor_PLR::getCHARACTER_INFO().getSKILLS().getArray(i).setBaseSKILL(e->_PropertyDatabase, checkedCast(skills._Skills[ i ].Base) );
- }
+ e->setSkillsToValue(value);
}
else
{
diff --git a/code/ryzom/server/src/entities_game_service/guild_manager/guild.cpp b/code/ryzom/server/src/entities_game_service/guild_manager/guild.cpp
index 4e9b81911..b7277bc11 100644
--- a/code/ryzom/server/src/entities_game_service/guild_manager/guild.cpp
+++ b/code/ryzom/server/src/entities_game_service/guild_manager/guild.cpp
@@ -237,6 +237,16 @@ void CGuild::setMOTD( const std::string& motd, const NLMISC::CEntityId& eId)
nlwarning("%s invalid member id %s",eId.toString().c_str());
return;
}
+
+ if ( motd == "?" )
+ {
+ // Show the old MOTD
+ SM_STATIC_PARAMS_1(params, STRING_MANAGER::literal);
+ params[0].Literal= _MessageOfTheDay;
+ CCharacter::sendDynamicMessageToChatGroup(user->getEntityRowId(), "GMOTD", CChatGroup::guild, params);
+ return;
+ }
+
EGSPD::CGuildGrade::TGuildGrade memberGrade = member->getGrade();
if( memberGrade >= EGSPD::CGuildGrade::Member)
{
@@ -255,9 +265,10 @@ void CGuild::setMOTD( const std::string& motd, const NLMISC::CEntityId& eId)
if(!_MessageOfTheDay.empty())
{
+ // Show new MOTD to all members
SM_STATIC_PARAMS_1(params, STRING_MANAGER::literal);
params[0].Literal= _MessageOfTheDay;
- CCharacter::sendDynamicMessageToChatGroup(user->getEntityRowId(), "GMOTD", CChatGroup::guild, params);
+ sendMessageToGuildChat("GMOTD", params);
}
}
else
@@ -1408,6 +1419,25 @@ void CGuild::sendMessageToGuildMembers( const std::string & msg, const TVectorP
IGuildUnifier::getInstance()->sendMessageToGuildMembers(this, msg, params);
}
+//----------------------------------------------------------------------------
+void CGuild::sendMessageToGuildChat( const std::string & msg, const TVectorParamCheck & params )const
+{
+ for ( std::map< EGSPD::TCharacterId, EGSPD::CGuildMemberPD*>::const_iterator it = getMembersBegin(); it != getMembersEnd(); ++it )
+ {
+ CGuildMember * member = EGS_PD_CAST( (*it).second );
+ EGS_PD_AST( member );
+
+ // continue if the player is offline
+ CGuildMemberModule * module = NULL;
+ if ( member->getReferencingModule(module) )
+ {
+ CGuildCharProxy proxy;
+ module->getProxy(proxy);
+ proxy.sendDynamicMessageToChatGroup(msg, CChatGroup::guild, params);
+ }
+ }
+}
+
//----------------------------------------------------------------------------
void CGuild::setMemberClientDB( CGuildMember* member )
{
diff --git a/code/ryzom/server/src/entities_game_service/guild_manager/guild.h b/code/ryzom/server/src/entities_game_service/guild_manager/guild.h
index e03556a0f..151c3ccce 100644
--- a/code/ryzom/server/src/entities_game_service/guild_manager/guild.h
+++ b/code/ryzom/server/src/entities_game_service/guild_manager/guild.h
@@ -165,6 +165,8 @@ public:
void addMemberToGuildChat(CGuildMember *member);
/// send a message to all members
void sendMessageToGuildMembers( const std::string & msg, const TVectorParamCheck & params = TVectorParamCheck() )const;
+ /// send a message to all members in guild chat
+ void sendMessageToGuildChat( const std::string & msg, const TVectorParamCheck & params = TVectorParamCheck() )const;
/// set information relative to a member in the guild client database
void setMemberClientDB( CGuildMember* member );
/// return the best online user
diff --git a/code/ryzom/server/src/entities_game_service/mission_manager/mission_step_kill.cpp b/code/ryzom/server/src/entities_game_service/mission_manager/mission_step_kill.cpp
index d31f4e795..9124c1fc3 100644
--- a/code/ryzom/server/src/entities_game_service/mission_manager/mission_step_kill.cpp
+++ b/code/ryzom/server/src/entities_game_service/mission_manager/mission_step_kill.cpp
@@ -215,9 +215,7 @@ class CMissionStepKillFauna : public IMissionStepTemplate
ret.clear();
ret.resize( _SubSteps.size() );
for ( uint i = 0; i < _SubSteps.size(); i++ )
- {
ret[i] = _SubSteps[i].Quantity;
- }
}
virtual void getTextParams( uint & nbSubSteps,const std::string* & textPtr,TVectorParamCheck& retParams, const std::vector& subStepStates)
diff --git a/code/ryzom/server/src/entities_game_service/outpost_manager/outpost_commands.cpp b/code/ryzom/server/src/entities_game_service/outpost_manager/outpost_commands.cpp
index d0973a82c..0270eb9e6 100644
--- a/code/ryzom/server/src/entities_game_service/outpost_manager/outpost_commands.cpp
+++ b/code/ryzom/server/src/entities_game_service/outpost_manager/outpost_commands.cpp
@@ -121,7 +121,7 @@ NLMISC_COMMAND(outpostSimulateTimer0End, "", " [
if (args.size()>1)
{
NLMISC::fromString(args[1], endTime);
- if (args[1][0]=='+')
+ if (args[1].find('+')==0)
endTime += CTime::getSecondsSince1970();
}
if (endTime==0) endTime = 1;
@@ -144,7 +144,7 @@ NLMISC_COMMAND(outpostSimulateTimer1End, "", " [
if (args.size()>1)
{
NLMISC::fromString(args[1], endTime);
- if (args[1][0]=='+')
+ if (args[1].find('+')==0)
endTime += CTime::getSecondsSince1970();
}
if (endTime==0) endTime = 1;
@@ -167,7 +167,7 @@ NLMISC_COMMAND(outpostSimulateTimer2End, "", " [
if (args.size()>1)
{
NLMISC::fromString(args[1], endTime);
- if (args[1][0]=='+')
+ if (args[1].find('+')==0)
endTime += CTime::getSecondsSince1970();
}
if (endTime==0) endTime = 1;
diff --git a/code/ryzom/server/src/entities_game_service/phrase_manager/faber_action.cpp b/code/ryzom/server/src/entities_game_service/phrase_manager/faber_action.cpp
index 9101ac850..50a069b5e 100644
--- a/code/ryzom/server/src/entities_game_service/phrase_manager/faber_action.cpp
+++ b/code/ryzom/server/src/entities_game_service/phrase_manager/faber_action.cpp
@@ -281,7 +281,7 @@ public:
}
else
{
- c->wearRightHandItem();
+ c->wearRightHandItem(phrase->getMps().size()/10);
// report Xp Gain unless used tool is worned
PROGRESSIONPVE::CCharacterProgressionPVE::getInstance()->actionReport( report, true, false );
diff --git a/code/ryzom/server/src/entities_game_service/phrase_manager/faber_phrase.cpp b/code/ryzom/server/src/entities_game_service/phrase_manager/faber_phrase.cpp
index f74b81196..577544e13 100644
--- a/code/ryzom/server/src/entities_game_service/phrase_manager/faber_phrase.cpp
+++ b/code/ryzom/server/src/entities_game_service/phrase_manager/faber_phrase.cpp
@@ -54,7 +54,7 @@ CFaberPhrase::CFaberPhrase()
_CraftedItemStaticForm = 0;
_RootFaberBricks = false;
_RootFaberPlan = 0;
-
+
// recommended skill level for using crafted item
_Recommended = 0;
@@ -67,13 +67,13 @@ CFaberPhrase::CFaberPhrase()
_MBORange = 0.0f;
_MBOProtection = 0.0f;
_MBOSapLoad = 0.0f;
-
+
// energy buff on item
_MBOHitPoint = 0;
_MBOSap = 0;
_MBOStamina = 0;
_MBOFocus = 0;
-
+
_IsStatic = true;
_PhraseType = BRICK_TYPE::FABER;
}
@@ -85,7 +85,7 @@ CFaberPhrase::CFaberPhrase()
bool CFaberPhrase::build( const TDataSetRow & actorRowId, const std::vector< const CStaticBrick* >& bricks, bool buildToExecute )
{
H_AUTO(CFaberPhrase_build);
-
+
// we are sure there is at least one brick and that there are non NULL;
nlassert( !bricks.empty() );
@@ -112,7 +112,7 @@ bool CFaberPhrase::build( const TDataSetRow & actorRowId, const std::vector< con
return false;
}
}
- else*/ if( ( brick.Family >= BRICK_FAMILIES::BeginFaberOption && brick.Family <= BRICK_FAMILIES::EndFaberOption )
+ else*/ if( ( brick.Family >= BRICK_FAMILIES::BeginFaberOption && brick.Family <= BRICK_FAMILIES::EndFaberOption )
|| ( brick.Family >= BRICK_FAMILIES::BeginFaberCredit && brick.Family <= BRICK_FAMILIES::EndFaberCredit ) )
{
for ( uint j = 0 ; j < brick.Params.size() ; ++j)
@@ -120,7 +120,7 @@ bool CFaberPhrase::build( const TDataSetRow & actorRowId, const std::vector< con
const TBrickParam::IId* param = brick.Params[j];
switch(param->id())
- {
+ {
case TBrickParam::FOCUS:
INFOLOG("FOCUS: %i",((CSBrickParamCraftFocus *)param)->Focus);
_FocusCost += ((CSBrickParamCraftFocus *)param)->Focus;
@@ -217,10 +217,10 @@ bool CFaberPhrase::evaluate()
bool CFaberPhrase::validate()
{
H_AUTO(CFaberPhrase_validate);
-
+
if ( !CraftSystemEnabled )
return false;
-
+
CCharacter * c = (CCharacter *) CEntityBaseManager::getEntityBasePtr( _ActorRowId );
if( c == 0 )
{
@@ -234,7 +234,7 @@ bool CFaberPhrase::validate()
return false;
}
- // check right hand item is a crafting tool
+ // check right hand item is a crafting tool
CGameItemPtr rightHandItem = c->getRightHandItem();
if (rightHandItem == NULL || rightHandItem->getStaticForm() == NULL || rightHandItem->getStaticForm()->Family != ITEMFAMILY::CRAFTING_TOOL)
{
@@ -249,8 +249,16 @@ bool CFaberPhrase::validate()
return false;
}
+
+ // check quality of right hand item (need be >= Recommended (level of item))
+ if (rightHandItem->recommended()+49 < _Recommended)
+ {
+ PHRASE_UTILITIES::sendDynamicSystemMessage(_ActorRowId, "CRAFT_NEED_RECOMMENDED_CRAFTING_TOOL");
+ return false;
+ }
+
// entities cant craft if in combat
- /* commented as test of right hand item is now made...
+ /* commented as test of right hand item is now made...
TDataSetRow entityRowId = CPhraseManager::getInstance().getEntityEngagedMeleeBy( _ActorRowId );
if (TheDataset.isAccessible(entityRowId))
{
@@ -258,7 +266,7 @@ bool CFaberPhrase::validate()
return false;
}
*/
-
+
const sint32 focus = c->getScores()._PhysicalScores[ SCORES::focus ].Current;
if ( focus < _FocusCost )
{
@@ -318,7 +326,7 @@ bool CFaberPhrase::update()
void CFaberPhrase::execute()
{
H_AUTO(CFaberPhrase_execute);
-
+
CCharacter* player = PlayerManager.getChar(_ActorRowId);
if (!player)
return;
@@ -336,13 +344,13 @@ void CFaberPhrase::execute()
_FaberTime = (NLMISC::TGameCycle)(plan->CraftingDuration * 10);
}
nldebug("CFaberPhrase::execute> _FaberTime = %d",_FaberTime);
-
+
const NLMISC::TGameCycle time = CTickEventHandler::getGameCycle();
-
+
_ExecutionEndDate = time + _FaberTime ;
player->setCurrentAction(CLIENT_ACTION_TYPE::Faber,_ExecutionEndDate);
- player->staticActionInProgress(true);
+ player->staticActionInProgress(true);
// set behaviour
PHRASE_UTILITIES::sendUpdateBehaviour( _ActorRowId, MBEHAV::FABER );
@@ -366,7 +374,7 @@ bool CFaberPhrase::launch()
void CFaberPhrase::apply()
{
H_AUTO(CFaberPhrase_apply);
-
+
CCharacter * c = dynamic_cast< CCharacter * > ( CEntityBaseManager::getEntityBasePtr( _ActorRowId ) );
if( c == 0 )
{
@@ -410,7 +418,7 @@ void CFaberPhrase::apply()
}
nbMp = (sint32)_MpsFormula.size();
-
+
uint32 nbMpForumulaNeedeInPlan = 0;
neededMp = (uint32)_RootFaberPlan->Faber->NeededMpsFormula.size();
for( uint mp = 0; mp < neededMp; ++mp )
@@ -418,7 +426,7 @@ void CFaberPhrase::apply()
//for each type of Mp needed
nbMpForumulaNeedeInPlan += _RootFaberPlan->Faber->NeededMpsFormula[ mp ].Quantity;
}
-
+
if( nbMpForumulaNeedeInPlan != _MpsFormula.size() )
{
nlwarning(" Craft plan %s need %d Raw Material Formula and client send %d Raw Material Formula", c->getCraftPlan().toString().c_str(), _RootFaberPlan->Faber->NeededMpsFormula.size(), _MpsFormula.size() );
@@ -453,7 +461,7 @@ void CFaberPhrase::apply()
stop();
return;
}
-
+
neededMp = (uint32)_RootFaberPlan->Faber->NeededMps.size();
EGSPD::CPeople::TPeople civRestriction = _RootFaberPlan->CivRestriction;
uint32 usedMp=0;
@@ -469,7 +477,7 @@ void CFaberPhrase::apply()
{
// for each Mp of one type (we have Quantity by type)
uint32 NumMpParameters = (uint32)usedMps[u_mp]->Mp->MpFaberParameters.size();
-
+
// for each Faber parameters in Mp
for( uint j = 0; j < NumMpParameters; ++j )
{
@@ -571,7 +579,7 @@ void CFaberPhrase::apply()
CGameItemPtr CFaberPhrase::systemCraftItem( const NLMISC::CSheetId& sheet, const std::vector< NLMISC::CSheetId >& Mp, const std::vector< NLMISC::CSheetId >& MpFormula )
{
H_AUTO(CFaberPhrase_systemCraftItem);
-
+
std::vector< const CStaticBrick* > bricks;
_RootFaberPlan = CSheets::getSBrickForm( sheet );
const CStaticBrick * rootFaberBricks = CSheets::getSBrickForm( CSheetId("bcpa01.sbrick") );
@@ -586,7 +594,7 @@ CGameItemPtr CFaberPhrase::systemCraftItem( const NLMISC::CSheetId& sheet, const
}
CGameItemPtr craftedItem = 0;
-
+
if( _RootFaberPlan && _RootFaberPlan->Faber )
{
_CraftedItemStaticForm = CSheets::getForm( _RootFaberPlan->Faber->CraftedItem );
@@ -597,7 +605,7 @@ CGameItemPtr CFaberPhrase::systemCraftItem( const NLMISC::CSheetId& sheet, const
bricks.push_back( rootFaberBricks );
bricks.push_back( _RootFaberPlan );
-
+
for( vector< NLMISC::CSheetId >::const_iterator it = Mp.begin(); it != Mp.end(); ++it )
{
const CStaticItem * mp = CSheets::getForm( (*it) );
@@ -626,7 +634,7 @@ CGameItemPtr CFaberPhrase::systemCraftItem( const NLMISC::CSheetId& sheet, const
}
_MpsFormula.push_back( mp );
}
-
+
// Check quantity of gived Mps formula
if( _RootFaberPlan->Faber->NeededMpsFormula.size() > _MpsFormula.size() )
{
@@ -658,7 +666,7 @@ CGameItemPtr CFaberPhrase::systemCraftItem( const NLMISC::CSheetId& sheet, const
void CFaberPhrase::end()
{
H_AUTO(CFaberPhrase_end);
-
+
CCharacter* player = PlayerManager.getChar(_ActorRowId);
if (!player)
return;
@@ -679,7 +687,7 @@ void CFaberPhrase::end()
void CFaberPhrase::stop()
{
H_AUTO(CFaberPhrase_stop);
-
+
CCharacter* player = PlayerManager.getChar(_ActorRowId);
if (!player)
return;
@@ -697,11 +705,11 @@ void CFaberPhrase::stop()
} // stop //
-NLMISC_COMMAND(simuCraft, "Simulation de craft pour verifier les probabilités de reusir un item","- ")
+NLMISC_COMMAND(simuCraft, "Craft simulation to verify probabilities to succesfully craft an item","
- ")
{
if (args.size() != 3)
return false;
-
+
uint32 nbSimu, skillLevel, itemQuality;
NLMISC::fromString(args[0], nbSimu);
NLMISC::fromString(args[1], skillLevel);
@@ -733,7 +741,7 @@ NLMISC_COMMAND(simuCraft, "Simulation de craft pour verifier les probabilit
if(sf == 1.0f)
{
++nbFullSuccess;
- XpGain += CStaticSuccessTable::getXPGain(SUCCESS_TABLE_TYPE::Craft, deltaLvlXp);
+ XpGain += CStaticSuccessTable::getXPGain(SUCCESS_TABLE_TYPE::Craft, deltaLvlXp);
}
else if( sf > 0.0f)
{
@@ -747,7 +755,7 @@ NLMISC_COMMAND(simuCraft, "Simulation de craft pour verifier les probabilit
nlinfo("FaberSimu: Results after %d roll: Sucess: %d (%.2f%%), partial sucess: %d (%.2f%%), Miss: %d (%.2f%%), Xp Gain %d",
nbSimu,
nbFullSuccess, 100.0f*nbFullSuccess/nbSimu,
- nbPartialSuccess, 100.0f*nbPartialSuccess/nbSimu,
+ nbPartialSuccess, 100.0f*nbPartialSuccess/nbSimu,
nbMiss, 100.0f*nbMiss/nbSimu,
uint32(1000.f*XpGain / (nbSimu-nbMiss/2) ) );
diff --git a/code/ryzom/server/src/entities_game_service/phrase_manager/fg_extraction_phrase.cpp b/code/ryzom/server/src/entities_game_service/phrase_manager/fg_extraction_phrase.cpp
index f9d2efe0c..6032adcfc 100644
--- a/code/ryzom/server/src/entities_game_service/phrase_manager/fg_extraction_phrase.cpp
+++ b/code/ryzom/server/src/entities_game_service/phrase_manager/fg_extraction_phrase.cpp
@@ -107,7 +107,7 @@ CFgExtractionPhrase::CFgExtractionPhrase()
bool CFgExtractionPhrase::build( const TDataSetRow & actorRowId, const std::vector< const CStaticBrick* >& bricks, bool buildToExecute )
{
H_AUTO(CFgExtractionPhrase_build);
-
+
_ActorRowId = actorRowId;
// Check grammar
@@ -120,7 +120,7 @@ bool CFgExtractionPhrase::build( const TDataSetRow & actorRowId, const std::vect
for (std::vector::const_iterator ib=bricks.begin(); ib!=bricks.end(); ++ib )
{
const CStaticBrick& brick = *(*ib);
-
+
// Compute Sabrina credit and cost)
if ( brick.SabrinaValue > 0 )
sabrinaCost += brick.SabrinaValue;
@@ -156,7 +156,7 @@ bool CFgExtractionPhrase::build( const TDataSetRow & actorRowId, const std::vect
break;
case TBrickParam::FG_SRC_PRD:
INFOLOG("FG_SRC_PRD: %g",((CSBrickParamForagePeriod *)param)->Period);
- if ( ((CSBrickParamForagePeriod *)param)->Period != 0 )
+ if ( ((CSBrickParamForagePeriod *)param)->Period != 0 )
_RequestedProps[CHarvestSource::S] = 1.0f / (((CSBrickParamForagePeriod *)param)->Period * 10.0f); // period converted from second to tick
else
_RequestedProps[CHarvestSource::S] = 1.0f;
@@ -231,7 +231,7 @@ bool CFgExtractionPhrase::build( const TDataSetRow & actorRowId, const std::vect
//nlerror( "TODO: Families" );
//if ( brick.Family >= BRICK_FAMILIES::BeginForage
-
+
//insertProgressingSkill( brick.Skill, brick.SheetId );
}
@@ -432,7 +432,7 @@ bool CFgExtractionPhrase::evaluate()
bool CFgExtractionPhrase::validate()
{
H_AUTO(CFgExtractionPhrase_validate);
-
+
if ( ! HarvestSystemEnabled )
return false;
@@ -544,6 +544,15 @@ bool CFgExtractionPhrase::validate()
return false; // has disappeared
}
+ // test if tool have enough quality
+ sint depositQ = (sint)harvestSource->forageSite()->deposit()->maxQuality();
+
+ if ((depositQ > 0) && (item->recommended()+49 < depositQ))
+ {
+ PHRASE_UTILITIES::sendDynamicSystemMessage(_ActorRowId, "FORAGE_TOOL_QUALITY_TOO_LOW");
+ return false;
+ }
+
// Check the distance from the player to the source (ignoring Z because for tunnel case, player couldn't target the source)
const CEntityState& state = player->getState();
CVector2f playerPos( (float)state.X / 1000.0f, (float)state.Y / 1000.0f );
@@ -589,7 +598,7 @@ bool CFgExtractionPhrase::validate()
bool CFgExtractionPhrase::update()
{
H_AUTO(CFgExtractionPhrase_update);
-
+
CCharacter* player = PlayerManager.getChar( _ActorRowId );
if ( ! player )
return false;
@@ -600,7 +609,7 @@ bool CFgExtractionPhrase::update()
if( idle() )
{
idle(false);
-
+
// check if actor can use action
CBypassCheckFlags bypassCheckFlags = CBypassCheckFlags::NoFlags;
if (player->canEntityUseAction(bypassCheckFlags,false) == false)
@@ -633,7 +642,7 @@ bool CFgExtractionPhrase::update()
void CFgExtractionPhrase::execute()
{
H_AUTO(CFgExtractionPhrase_execute);
-
+
// Get character
CCharacter* player = PlayerManager.getChar( _ActorRowId );
if (!player)
@@ -676,7 +685,7 @@ void CFgExtractionPhrase::execute()
void CFgExtractionPhrase::end()
{
H_AUTO(CFgExtractionPhrase_end);
-
+
CCharacter* player = PlayerManager.getChar(_ActorRowId);
if (!player)
return;
@@ -694,7 +703,7 @@ void CFgExtractionPhrase::end()
void CFgExtractionPhrase::stop()
{
H_AUTO(CFgExtractionPhrase_stop);
-
+
CCharacter* player = PlayerManager.getChar(_ActorRowId);
if (!player)
return;
@@ -742,7 +751,7 @@ bool CFgExtractionPhrase::launch()
void CFgExtractionPhrase::apply()
{
H_AUTO(CFgExtractionPhrase_apply);
-
+
CCharacter* player = PlayerManager.getChar( _ActorRowId );
if (!player)
return;
@@ -778,7 +787,7 @@ void CFgExtractionPhrase::apply()
void CFgExtractionPhrase::applyExtraction( CCharacter *player, float successFactor )
{
H_AUTO(CFgExtractionPhrase_applyExtraction);
-
+
nlassert( _Source );
if ( ! player->forageProgress() )
return;
@@ -801,7 +810,7 @@ void CFgExtractionPhrase::applyExtraction( CCharacter *player, float successFact
player->forageProgress()->fillFromExtraction( _Props.Extraction.ObtainedProps[CHarvestSource::A], _Props.Extraction.ObtainedProps[CHarvestSource::Q], player );
else
return;
-
+
// Report result of action
if ( propDrop != CHarvestSource::NoDrop )
{
@@ -864,7 +873,7 @@ struct CNonNullGameItemPtrPred : std::unary_function
void CFgExtractionPhrase::doKamiOffering( CCharacter *player )
{
H_AUTO(CFgExtractionPhrase_doKamiOffering);
-
+
// Count the number of non empty slots
// const vector &theBag = player->getInventory()[INVENTORIES::bag]()->getChildren();
CInventoryPtr theBag = player->getInventory(INVENTORIES::bag);
@@ -912,7 +921,7 @@ void CFgExtractionPhrase::doKamiOffering( CCharacter *player )
(*ib)->getSheetId().toString().c_str());
*/
// EGSPD::forageKamiItemOffering(player->getId(), _Source->depositForK()->name(), _Source->depositForK()->kamiAnger(), _Props.Care.KamiAngerDec[CHarvestSource::KamiAngerDec], item->getSheetId().toString());
-
+
// TODO: quantity, filter, etc.
// player->destroyItem( INVENTORIES::bag, ib-theBag.begin(), 1/*(*ib).quantity()*/, false );
theBag->deleteItem(i);
diff --git a/code/ryzom/server/src/entities_game_service/player_manager/character.cpp b/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
index b493d041b..51d6a9c39 100644
--- a/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
+++ b/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
@@ -675,6 +675,9 @@ CCharacter::CCharacter(): CEntityBase(false),
_FriendVisibility = VisibleToAll;
+ _LangChannel = "en";
+ _NewTitle = "Refugee";
+
initDatabase();
} // CCharacter //
@@ -699,6 +702,7 @@ void CCharacter::clear()
_ForbidAuraUseStartDate=0;
_ForbidAuraUseEndDate=0;
_Title= CHARACTER_TITLE::Refugee;
+ _NewTitle = "Refugee";
SET_STRUCT_MEMBER(_VisualPropertyA,PropertySubData.HatModel,0);
SET_STRUCT_MEMBER(_VisualPropertyA,PropertySubData.HatColor,0);
@@ -3851,9 +3855,9 @@ void CCharacter::sendBetaTesterStatus()
sendReservedTitleStatus( CHARACTER_TITLE::FBT, p->isBetaTester() );
- if (!p->isBetaTester() && _Title == CHARACTER_TITLE::FBT)
+ if (!p->isBetaTester() && _NewTitle == "FBT")
{
- _Title = CHARACTER_TITLE::Refugee;
+ _NewTitle = "Refugee";
registerName();
}
}
@@ -3869,9 +3873,9 @@ void CCharacter::sendWindermeerStatus()
sendReservedTitleStatus( CHARACTER_TITLE::WIND, p->isWindermeerCommunity() );
- if ( !p->isWindermeerCommunity() && _Title == CHARACTER_TITLE::WIND)
+ if ( !p->isWindermeerCommunity() && _NewTitle == "WIND")
{
- _Title = CHARACTER_TITLE::Refugee;
+ _NewTitle = "Refugee";
registerName();
}
}
@@ -6963,11 +6967,11 @@ double CCharacter::addXpToSkillInternal( double XpGain, const std::string& ContS
CBankAccessor_PLR::getCHARACTER_INFO().getRING_XP_CATALYSER().setCount(_PropertyDatabase, checkedCast(ringCatalyserCount) );
}
}
- }
- if (!p->isTrialPlayer())
- {
- xpBonus = XpGain;
+ if (!p->isTrialPlayer())
+ {
+ xpBonus = XpGain;
+ }
}
XpGain += xpBonus + ringXpBonus;
@@ -7081,7 +7085,7 @@ double CCharacter::addXpToSkillInternal( double XpGain, const std::string& ContS
SM_STATIC_PARAMS_3(paramsP, STRING_MANAGER::skill, STRING_MANAGER::integer, STRING_MANAGER::integer);
paramsP[0].Enum = skillEnum;
paramsP[1].Int = max((sint32)1, sint32(100*XpGain) );
- paramsP[2].Int = max((sint32)1, sint32(100*(XpGain - (xpBonus+ringXpBonus))) );
+ paramsP[2].Int = max((sint32)1, sint32(100*(XpGain - xpBonus - ringXpBonus)));
PHRASE_UTILITIES::sendDynamicSystemMessage(_EntityRowId, "XP_CATALYSER_PROGRESS_NORMAL_GAIN", paramsP);
if( xpBonus > 0 )
@@ -7329,11 +7333,18 @@ double CCharacter::addXpToSkillInternal( double XpGain, const std::string& ContS
return XpGainRemainder;
}
-
//-----------------------------------------------
// CCharacter::setSkillTreeToMaxValue Set skill tree of character to max value of each skill
//-----------------------------------------------
void CCharacter::setSkillsToMaxValue()
+{
+ setSkillsToValue(-1);
+}
+
+//-----------------------------------------------
+// CCharacter::setSkillTreeToMaxValue Set skill tree of character to max value of each skill
+//-----------------------------------------------
+void CCharacter::setSkillsToValue(const sint32& value)
{
// get pointer on static skills tree definition
CSheetId sheet("skills.skill_tree");
@@ -7342,16 +7353,31 @@ void CCharacter::setSkillsToMaxValue()
for( uint i = 0; i < SKILLS::NUM_SKILLS; ++i )
{
- _Skills._Skills[ i ].Base = SkillsTree->SkillsTree[ i ].MaxSkillValue;
+ _Skills._Skills[ i ].Base = (value < 0) ? SkillsTree->SkillsTree[ i ].MaxSkillValue : min( value, (sint32)SkillsTree->SkillsTree[ i ].MaxSkillValue );
_Skills._Skills[ i ].Current = SkillsTree->SkillsTree[ i ].MaxSkillValue + _Skills._Skills[ i ].Modifier;
-// _PropertyDatabase.setProp( _DataIndexReminder->CHARACTER_INFO.SKILLS.Skill[i], _Skills._Skills[ i ].Current );
- CBankAccessor_PLR::getCHARACTER_INFO().getSKILLS().getArray(i).setSKILL(_PropertyDatabase, checkedCast(_Skills._Skills[ i ].Current) );
-// _PropertyDatabase.setProp( _DataIndexReminder->CHARACTER_INFO.SKILLS.BaseSkill[i], _Skills._Skills[ i ].Base );
+ _Skills._Skills[ i ].MaxLvlReached = _Skills._Skills[ i ].Current;
+
CBankAccessor_PLR::getCHARACTER_INFO().getSKILLS().getArray(i).setBaseSKILL(_PropertyDatabase, checkedCast(_Skills._Skills[ i ].Base) );
+ CBankAccessor_PLR::getCHARACTER_INFO().getSKILLS().getArray(i).setSKILL(_PropertyDatabase, checkedCast(_Skills._Skills[ i ].Current) );
+
+ // update all parent skill with new max children
+ SKILLS::ESkills skillUpdated = (SKILLS::ESkills)i;
+ while( SkillsTree->SkillsTree[ skillUpdated ].ParentSkill != SKILLS::unknown )
+ {
+ if( _Skills._Skills[ i ].Base > _Skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxLvlReached )
+ {
+ _Skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxLvlReached = _Skills._Skills[ i ].Base;
+ _Skills._Skills[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].Base = min( _Skills._Skills[ skillUpdated ].Base, (sint32)SkillsTree->SkillsTree[ SkillsTree->SkillsTree[ skillUpdated ].ParentSkill ].MaxSkillValue );
+ skillUpdated = SkillsTree->SkillsTree[ skillUpdated ].ParentSkill;
+ }
+ else
+ {
+ break;
+ }
+ }
}
}
-
//-----------------------------------------------
// CCharacter::sendDynamicSystemMessage
//-----------------------------------------------
@@ -7949,6 +7975,7 @@ void CCharacter::setStartStatistics( const CCreateCharMsg& createCharMsg )
_Race = (EGSPD::CPeople::TPeople) createCharMsg.People;
_Gender = createCharMsg.Sex;
_Title = CHARACTER_TITLE::Refugee;
+ _NewTitle = "Refugee";
// fame information
// Players start out as Neutral in their declared clans
@@ -9787,7 +9814,7 @@ bool CCharacter::queryItemPrice( const CGameItemPtr item, uint32& price )
quality = theItem->quality();
if ( theItem->maxDurability() )
wornFactor = float(theItem->durability()) / float(theItem->maxDurability());
- price = (uint32) ( CShopTypeManager::computeBasePrice( theItem, quality ) * wornFactor );
+ price = (uint32) ( CShopTypeManager::computeBasePrice( theItem, quality ) * wornFactor * 0.02 );
return true;
}
@@ -10214,6 +10241,35 @@ void CCharacter::initPvpPointDb()
CBankAccessor_PLR::getUSER().getRRPS_LEVELS(0).setVALUE(_PropertyDatabase, _PvpPoint );
}
+//-----------------------------------------------------------------------------
+void CCharacter::setLangChannel(const string &lang) {
+ _LangChannel = lang;
+}
+
+//-----------------------------------------------------------------------------
+void CCharacter::setNewTitle(const string &title) {
+ _NewTitle = title;
+}
+
+//-----------------------------------------------------------------------------
+void CCharacter::setTagPvPA(const string &tag) {
+ _TagPvPA = tag;
+}
+
+//-----------------------------------------------------------------------------
+void CCharacter::setTagPvPB(const string &tag) {
+ _TagPvPB = tag;
+}
+
+//-----------------------------------------------------------------------------
+void CCharacter::setTagA(const string &tag) {
+ _TagA = tag;
+}
+
+//-----------------------------------------------------------------------------
+void CCharacter::setTagB(const string &tag) {
+ _TagB = tag;
+}
//-----------------------------------------------------------------------------
void CCharacter::setOrganization(uint32 org)
@@ -12895,7 +12951,7 @@ void CCharacter::registerName(const ucstring &newName)
CMessage msgName("CHARACTER_NAME_LANG");
msgName.serial(_EntityRowId);
- string sTitle = CHARACTER_TITLE::toString(_Title);
+ string sTitle = getFullTitle();
ucstring RegisteredName;
if (newName.empty())
RegisteredName = getName() + string("$") + sTitle + string("$");
@@ -16161,15 +16217,30 @@ void CCharacter::applyGooDamage( float gooDistance )
if (hpLost < 1) hpLost = 1;
if( hpLost > _PhysScores._PhysicalScores[ SCORES::hit_points ].Current )
{
- _PhysScores._PhysicalScores[ SCORES::hit_points ].Current = 0;
- // send message to player for inform is dead by goo
- sendDynamicSystemMessage(_EntityRowId, "KILLED_BY_GOO");
+ _PhysScores._PhysicalScores[ SCORES::hit_points ].Current = 0;
+
+ // send message to player for inform is dead by goo or other
+ if (_CurrentContinent == CONTINENT::FYROS)
+ sendDynamicSystemMessage(_EntityRowId, "KILLED_BY_FIRE");
+ else if (_CurrentContinent == CONTINENT::TRYKER)
+ sendDynamicSystemMessage(_EntityRowId, "KILLED_BY_STEAM");
+ else if (_CurrentContinent == CONTINENT::MATIS)
+ sendDynamicSystemMessage(_EntityRowId, "KILLED_BY_POISON");
+ else
+ sendDynamicSystemMessage(_EntityRowId, "KILLED_BY_GOO");
}
else
{
_PhysScores._PhysicalScores[ SCORES::hit_points ].Current = _PhysScores._PhysicalScores[ SCORES::hit_points ].Current - hpLost;
// send message to player for inform is suffer goo damage
- sendDynamicSystemMessage(_EntityRowId, "SUFFER_GOO_DAMAGE");
+ if (_CurrentContinent == CONTINENT::FYROS)
+ sendDynamicSystemMessage(_EntityRowId, "SUFFER_FIRE_DAMAGE");
+ else if (_CurrentContinent == CONTINENT::TRYKER)
+ sendDynamicSystemMessage(_EntityRowId, "SUFFER_STEAM_DAMAGE");
+ else if (_CurrentContinent == CONTINENT::MATIS)
+ sendDynamicSystemMessage(_EntityRowId, "SUFFER_POISON_DAMAGE");
+ else
+ sendDynamicSystemMessage(_EntityRowId, "SUFFER_GOO_DAMAGE");
}
}
}
@@ -19057,7 +19128,7 @@ void CCharacter::setStartupInstance(uint32 instanceId)
void CCharacter::setTitle( CHARACTER_TITLE::ECharacterTitle title )
{
- _Title = title;
+ setNewTitle(CHARACTER_TITLE::toString(title));
}
@@ -20736,4 +20807,4 @@ bool CCharacter::initPetInventory(uint8 index)
return true;
}
return false;
-}
\ No newline at end of file
+}
diff --git a/code/ryzom/server/src/entities_game_service/player_manager/character.h b/code/ryzom/server/src/entities_game_service/player_manager/character.h
index f2ba0944b..8a3c127da 100644
--- a/code/ryzom/server/src/entities_game_service/player_manager/character.h
+++ b/code/ryzom/server/src/entities_game_service/player_manager/character.h
@@ -890,6 +890,9 @@ public:
// Set skill tree of character to max value of each skill
void setSkillsToMaxValue();
+ // Set skill tree of character to specified value
+ void setSkillsToValue(const sint32& value);
+
// for respawn management, need to modify _TimeDeath in cbTpAcknownledge callback
NLMISC::TGameTime& getTimeOfDeath();
void setTimeOfDeath( NLMISC::TGameTime t);
@@ -2392,6 +2395,27 @@ public:
uint32 getLastConnectedTime() const;
uint32 getLastConnectedDate() const;
uint32 getPlayedTime() const;
+
+ const std::string& getLangChannel() const;
+ void setLangChannel(const std::string &lang);
+
+ const std::string& getNewTitle() const;
+ void setNewTitle(const std::string &title);
+
+ std::string getFullTitle() const;
+
+ std::string getTagA() const;
+ void setTagA(const std::string &tag);
+
+ std::string getTagB() const;
+ void setTagB(const std::string &tag);
+
+ std::string getTagPvPA() const;
+ void setTagPvPA(const std::string &tag);
+
+ std::string getTagPvPB() const;
+ void setTagPvPB(const std::string &tag);
+
uint32 getOrganization() const;
uint32 getOrganizationStatus() const;
const std::list& getLastLogStats() const;
@@ -3032,6 +3056,14 @@ private:
uint32 _OrganizationStatus;
uint32 _OrganizationPoints;
+ std::string _LangChannel;
+
+ std::string _NewTitle;
+ std::string _TagPvPA;
+ std::string _TagPvPB;
+ std::string _TagA;
+ std::string _TagB;
+
/// SDB path where player wins HoF points in PvP (if not empty)
std::string _SDBPvPPath;
diff --git a/code/ryzom/server/src/entities_game_service/player_manager/character_inlines.h b/code/ryzom/server/src/entities_game_service/player_manager/character_inlines.h
index 7e2cd4248..615ddaeb8 100644
--- a/code/ryzom/server/src/entities_game_service/player_manager/character_inlines.h
+++ b/code/ryzom/server/src/entities_game_service/player_manager/character_inlines.h
@@ -894,6 +894,67 @@ inline uint32 CCharacter::getPlayedTime() const
return _PlayedTime;
}
+//------------------------------------------------------------------------------
+inline const std::string& CCharacter::getLangChannel() const
+
+{
+ return _LangChannel;
+}
+
+//------------------------------------------------------------------------------
+inline const std::string& CCharacter::getNewTitle() const
+
+{
+ return _NewTitle;
+}
+
+//------------------------------------------------------------------------------
+inline std::string CCharacter::getTagA() const
+
+{
+ if (_TagA.empty())
+ return "_";
+ return _TagA;
+}
+
+//------------------------------------------------------------------------------
+inline std::string CCharacter::getTagB() const
+
+{
+ if (_TagB.empty())
+ return "_";
+ return _TagB;
+}
+
+
+//------------------------------------------------------------------------------
+inline std::string CCharacter::getTagPvPA() const
+
+{
+ if (_TagPvPA.empty())
+ return "_";
+ return _TagPvPA;
+}
+
+//------------------------------------------------------------------------------
+inline std::string CCharacter::getTagPvPB() const
+
+{
+ if (_TagPvPB.empty())
+ return "_";
+ return _TagPvPB;
+}
+
+
+//------------------------------------------------------------------------------
+inline std::string CCharacter::getFullTitle() const
+{
+ if (!_TagA.empty() || !_TagB.empty() || !_TagPvPA.empty() || !_TagPvPB.empty())
+ return _NewTitle+"#"+getTagPvPA()+"#"+getTagPvPB()+"#"+getTagA()+"#"+getTagB();
+ else
+ return _NewTitle;
+}
+
//------------------------------------------------------------------------------
inline uint32 CCharacter::getOrganization() const
diff --git a/code/ryzom/server/src/entities_game_service/player_manager/persistent_player_data.cpp b/code/ryzom/server/src/entities_game_service/player_manager/persistent_player_data.cpp
index 703261a56..e777f3067 100644
--- a/code/ryzom/server/src/entities_game_service/player_manager/persistent_player_data.cpp
+++ b/code/ryzom/server/src/entities_game_service/player_manager/persistent_player_data.cpp
@@ -321,8 +321,8 @@ static void prepareCharacterPositionForStore ( COfflineEntityState & state, cons
H_AUTO(CCharacterStore);\
CFameManager::getInstance().savePlayerFame(_Id, const_cast(*_Fames));\
/* Update the current playing session duration */ \
- if (_LastLogStats.size() > 0) _LastLogStats.begin()->Duration = CTime::getSecondsSince1970() - _LastLogStats.begin()->LoginTime; \
- else nlwarning("Cannot update play session duration, _LastLogStats is empty, new character?"); \
+ if (!_LastLogStats.empty()) _LastLogStats.begin()->Duration = CTime::getSecondsSince1970() - _LastLogStats.begin()->LoginTime;\
+ else nlwarning("Cannot update play session duration, _LastLogStats is empty, new character?");\
\
/* Unless the top of the position stack is locked, */ \
/* update the stored position stack with the current position */ \
@@ -415,6 +415,7 @@ static void prepareCharacterPositionForStore ( COfflineEntityState & state, cons
PVP_CLAN::TPVPClan k=PVP_CLAN::fromString(key); if ((k>=PVP_CLAN::BeginClans) && (k<=PVP_CLAN::EndClans)) _FactionPoint[k-PVP_CLAN::BeginClans]=val)\
\
PROP(uint32,_PvpPoint)\
+ PROP2(_LangChannel,string,_LangChannel,_LangChannel=val)\
PROP(uint32,_Organization)\
PROP(uint32,_OrganizationStatus)\
PROP(uint32,_OrganizationPoints)\
@@ -438,6 +439,11 @@ static void prepareCharacterPositionForStore ( COfflineEntityState & state, cons
PROP_GAME_CYCLE_COMP(_ForbidAuraUseStartDate)\
PROP_GAME_CYCLE_COMP(_ForbidAuraUseEndDate)\
PROP2(_Title, string, CHARACTER_TITLE::toString(getTitle()), setTitle(CHARACTER_TITLE::toCharacterTitle(val)))\
+ PROP2(_NewTitle, string, _NewTitle, _NewTitle=val)\
+ PROP2(_TagPvPA, string, _TagPvPA, _TagPvPA=val)\
+ PROP2(_TagPvPB, string, _TagPvPB, _TagPvPB=val)\
+ PROP2(_TagA, string, _TagA, _TagA=val)\
+ PROP2(_TagB, string, _TagB, _TagB=val)\
\
/* Visual Properties */\
PROP2(HairType, uint8, _VisualPropertyA().PropertySubData.HatModel, SET_STRUCT_MEMBER(_VisualPropertyA,PropertySubData.HatModel,val))\
diff --git a/code/ryzom/server/src/entities_game_service/pvp_manager/pvp_manager_2.cpp b/code/ryzom/server/src/entities_game_service/pvp_manager/pvp_manager_2.cpp
index 3d09bc9fd..012877931 100644
--- a/code/ryzom/server/src/entities_game_service/pvp_manager/pvp_manager_2.cpp
+++ b/code/ryzom/server/src/entities_game_service/pvp_manager/pvp_manager_2.cpp
@@ -230,6 +230,22 @@ std::vector CPVPManager2::getCharacterChannels(CCharacter * user)
}
}
+ // Add lang channel
+ if (!user->getLangChannel().empty()) {
+ TMAPExtraFactionChannel::iterator it = _ExtraFactionChannel.find(user->getLangChannel());
+ if (it != _ExtraFactionChannel.end())
+ {
+ result.push_back((*it).second);
+ }
+ } else {
+ TMAPExtraFactionChannel::iterator it = _ExtraFactionChannel.find("en");
+ if (it != _ExtraFactionChannel.end())
+ {
+ result.push_back((*it).second);
+ }
+ }
+
+ /*
bool matis = CFameInterface::getInstance().getFameIndexed(user->getId(), 0) >= PVPFameRequired*6000;
bool fyros = CFameInterface::getInstance().getFameIndexed(user->getId(), 1) >= PVPFameRequired*6000;
bool tryker = CFameInterface::getInstance().getFameIndexed(user->getId(), 2) >= PVPFameRequired*6000;
@@ -279,7 +295,7 @@ std::vector CPVPManager2::getCharacterChannels(CCharacter * user)
result.push_back((*it).second);
}
}
-// }
+*/
return result;
}
@@ -1088,10 +1104,19 @@ bool CPVPManager2::addFactionWar( PVP_CLAN::TPVPClan clan1, PVP_CLAN::TPVPClan c
void CPVPManager2::onIOSMirrorUp()
{
// create extra factions channels
+ /*
createExtraFactionChannel("hominists");
createExtraFactionChannel("urasies");
createExtraFactionChannel("marauders");
createExtraFactionChannel("agnos");
+ */
+
+ // Community Channels
+ createExtraFactionChannel("en");
+ createExtraFactionChannel("fr");
+ createExtraFactionChannel("de");
+ createExtraFactionChannel("ru");
+ createExtraFactionChannel("es");
for (uint i = PVP_CLAN::BeginClans; i <= PVP_CLAN::EndClans; i++)
{
diff --git a/code/ryzom/server/src/entities_game_service/zone_manager.cpp b/code/ryzom/server/src/entities_game_service/zone_manager.cpp
index feb2e618c..dd9e817b1 100644
--- a/code/ryzom/server/src/entities_game_service/zone_manager.cpp
+++ b/code/ryzom/server/src/entities_game_service/zone_manager.cpp
@@ -1508,7 +1508,7 @@ bool CZoneManager::getPlace( sint32 x, sint32 y, float& gooDistance, const CPlac
}
for (uint k = 0; k < _Continents[i].getRegions()[j]->getPlaces().size(); k++ )
{
- if( _Continents[i].getRegions()[j]->getPlaces()[k]->isGooPath() == false )
+ if(!_Continents[i].getRegions()[j]->getPlaces()[k]->isGooActive())
{
if ( _Continents[i].getRegions()[j]->getPlaces()[k]->contains( vect ) )
{
diff --git a/code/ryzom/server/src/monitor_service/mirrors.h b/code/ryzom/server/src/monitor_service/mirrors.h
index 407292238..30031dcc1 100644
--- a/code/ryzom/server/src/monitor_service/mirrors.h
+++ b/code/ryzom/server/src/monitor_service/mirrors.h
@@ -47,7 +47,7 @@ public:
// TODO: check if good
static bool exists( const TDataSetRow& entityIndex );
static const NLMISC::CEntityId& getEntityId( const TDataSetRow& entityIndex );
- static const uint16 getTeamId(const TDataSetRow& entityIndex);
+ static uint16 getTeamId(const TDataSetRow& entityIndex);
static CAICoord x( const TDataSetRow& entityIndex );
static CAICoord y( const TDataSetRow& entityIndex );
From 9a5b97dfff59fb2777d34078d03e71dc11d10d62 Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 5 Oct 2012 20:36:10 +0200
Subject: [PATCH 051/125] Fixed: Compilation under Mac OS X
---
code/nel/src/3d/driver/opengl/driver_opengl_inputs.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_inputs.cpp b/code/nel/src/3d/driver/opengl/driver_opengl_inputs.cpp
index 81fea5333..4064c8819 100644
--- a/code/nel/src/3d/driver/opengl/driver_opengl_inputs.cpp
+++ b/code/nel/src/3d/driver/opengl/driver_opengl_inputs.cpp
@@ -17,7 +17,7 @@
#include "stdopengl.h"
#include "driver_opengl.h"
-#ifdef NL_OS_UNIX
+#if defined(NL_OS_UNIX) && !defined(NL_OS_MAC)
# include
# ifdef HAVE_XRENDER
# include
@@ -25,7 +25,7 @@
# ifdef HAVE_XCURSOR
# include
# endif // HAVE_XCURSOR
-#endif // NL_OS_UNIX
+#endif // defined(NL_OS_UNIX) && !defined(NL_OS_MAC)
#include "nel/misc/mouse_device.h"
#include "nel/misc/di_event_emitter.h"
From 7c4be0fb748e6eb1c1ec7ef24fdd29bebdcb569f Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 5 Oct 2012 20:37:15 +0200
Subject: [PATCH 052/125] Changed: Synchronization with SVN
---
code/ryzom/server/data_shard/client_commands_privileges.txt | 1 +
code/ryzom/server/data_shard/game_event.txt | 2 +-
code/ryzom/server/sheet_pack_cfg/input_output_service.cfg | 2 +-
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/code/ryzom/server/data_shard/client_commands_privileges.txt b/code/ryzom/server/data_shard/client_commands_privileges.txt
index 5ce9fe6fa..b9f28f95f 100644
--- a/code/ryzom/server/data_shard/client_commands_privileges.txt
+++ b/code/ryzom/server/data_shard/client_commands_privileges.txt
@@ -100,6 +100,7 @@ summon :DEV:SGM:GM:VG:SG:EM: // Summon a player in front of the CSR:
- <_Date type="UINT32" value="0"/>
+
<_Name type="STRING" value=""/>
<_EventFaction1Name type="STRING" value=""/>
<_EventFaction2Name type="STRING" value=""/>
diff --git a/code/ryzom/server/sheet_pack_cfg/input_output_service.cfg b/code/ryzom/server/sheet_pack_cfg/input_output_service.cfg
index f1059d234..8772cf07f 100644
--- a/code/ryzom/server/sheet_pack_cfg/input_output_service.cfg
+++ b/code/ryzom/server/sheet_pack_cfg/input_output_service.cfg
@@ -126,7 +126,7 @@ SystemCmd = {};
ReadTranslationWork = 0;
TranslationWorkPath = "translation/work";
-//Paths = { "data_leveldesign/leveldesign/Game_elem" };
+//Paths += { "data_leveldesign/leveldesign/Game_elem" };
// Global shard bot name translation file. You sould overide this
// in input_output_service.cfg to specialize the file
From 5516d7bbd070fdc39ae76d2f0fbb6b0070e629cc Mon Sep 17 00:00:00 2001
From: kervala
Date: Fri, 5 Oct 2012 21:34:10 +0200
Subject: [PATCH 053/125] Changed: libxml2 requires liblzma under Mac OS X
---
code/CMakeLists.txt | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt
index 07bd52eba..8cf86ecc2 100644
--- a/code/CMakeLists.txt
+++ b/code/CMakeLists.txt
@@ -111,10 +111,11 @@ IF(WITH_STATIC)
SET(LIBXML2_DEFINITIONS ${LIBXML2_DEFINITIONS} -DLIBXML_STATIC)
SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARIES} ${WINSOCK2_LIB})
- # on Mac OS X libxml2 requieres iconv
+ # on Mac OS X libxml2 requires iconv and liblzma
IF(APPLE)
FIND_PACKAGE(Iconv REQUIRED)
- SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARIES} ${ICONV_LIBRARIES})
+ FIND_PACKAGE(LibLZMA REQUIRED)
+ SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARIES} ${ICONV_LIBRARIES} ${LIBLZMA_LIBRARIES})
INCLUDE_DIRECTORIES(${ICONV_INCLUDE_DIR})
ENDIF(APPLE)
ENDIF(WITH_STATIC)
From 152df7402b9ea9220af7cfb9b5473fddc926abbe Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 6 Oct 2012 15:49:27 +0200
Subject: [PATCH 054/125] Changed: Updated description for CBitmap::load and
CBitmap::loadSize
---
code/nel/include/nel/misc/bitmap.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/nel/include/nel/misc/bitmap.h b/code/nel/include/nel/misc/bitmap.h
index f3d532311..0b6940629 100644
--- a/code/nel/include/nel/misc/bitmap.h
+++ b/code/nel/include/nel/misc/bitmap.h
@@ -297,8 +297,8 @@ public:
void swap(CBitmap &other);
/**
- * Read a bitmap(TGA or DDS) from an IStream.
- * Bitmap supported are DDS (DXTC1, DXTC1 with Alpha, DXTC3, DXTC5, and
+ * Read a bitmap(TGA, JPEG, PNG or DDS) from an IStream.
+ * Bitmap supported are DDS (DXTC1, DXTC1 with Alpha, DXTC3, DXTC5), PNG, JPEG and
* uncompressed TGA (24 and 32 bits).
* \param IStream The stream must be in reading mode.
* \param mipMapSkip if the file is a DDS with mipMap. N=mipMapSkip mipmaps are skipped.
@@ -310,7 +310,7 @@ public:
/**
* Determinate the bitmap size from a bitmap(TGA or DDS) from an IStream. load just header of the file.
- * Bitmap supported are DDS (DXTC1, DXTC1 with Alpha, DXTC3, DXTC5, and
+ * Bitmap supported are DDS (DXTC1, DXTC1 with Alpha, DXTC3, DXTC5), PNG, JPEG and
* uncompressed TGA (24 and 32 bits).
* NB: at the end, f is seeked to begin.
* \param IStream The stream must be in reading mode.
From 3d50e0160d0bb9b1009b1410b80aa250d645ed64 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 6 Oct 2012 17:09:03 +0200
Subject: [PATCH 055/125] Changed: #878 Fix typos in comments/code
---
code/ryzom/client/src/app_bundle_utils.cpp | 2 +-
code/ryzom/client/src/session_browser.cpp | 2 +-
code/ryzom/server/backup_service.cfg | 4 +-
code/ryzom/server/backup_service_default.cfg | 25 +++++------
code/ryzom/server/common.cfg | 5 ++-
.../server/entities_game_service_default.cfg | 14 +++---
code/ryzom/server/gpm_service_default.cfg | 2 +-
.../server/input_output_service_default.cfg | 43 ++++++++++---------
.../server/mail_forum_service_default.cfg | 19 ++++----
code/ryzom/server/mirror_service_default.cfg | 4 +-
code/ryzom/server/session_browser_server.cfg | 3 +-
.../server/shard_unifier_service_default.cfg | 2 +-
.../player_manager/character.cpp | 1 -
13 files changed, 65 insertions(+), 61 deletions(-)
diff --git a/code/ryzom/client/src/app_bundle_utils.cpp b/code/ryzom/client/src/app_bundle_utils.cpp
index b6321ad20..b42b00b98 100644
--- a/code/ryzom/client/src/app_bundle_utils.cpp
+++ b/code/ryzom/client/src/app_bundle_utils.cpp
@@ -21,7 +21,7 @@
#include
#endif
-std::string getAppBundlePath()
+std::string getAppBundlePath()
{
static std::string cachedPathToBundle;
diff --git a/code/ryzom/client/src/session_browser.cpp b/code/ryzom/client/src/session_browser.cpp
index e6932c4a2..4cae87fee 100644
--- a/code/ryzom/client/src/session_browser.cpp
+++ b/code/ryzom/client/src/session_browser.cpp
@@ -165,7 +165,7 @@ void CSessionBrowser::run()
}
disconnected:
- // unconnected, waiting for message to send
+ // disconnected, waiting for message to send
while (adaptor->_SendQueue.empty())
{
nlSleep(100);
diff --git a/code/ryzom/server/backup_service.cfg b/code/ryzom/server/backup_service.cfg
index 2f95dea97..16d870748 100644
--- a/code/ryzom/server/backup_service.cfg
+++ b/code/ryzom/server/backup_service.cfg
@@ -8,7 +8,7 @@
AESAliasName = "bms_master";
-Paths = {
+Paths += {
".",
"../common/data_leveldesign",
};
@@ -25,7 +25,7 @@ WriteFilesDirectory = "data_shard";
WebPort = 49970;
-
// ---- service custom variables (used by CVariable class)
+// ---- service custom variables (used by CVariable class)
// BS - Root directory where data are backuped to
IncrementalBackupDirectory = "../incremental_backup";
diff --git a/code/ryzom/server/backup_service_default.cfg b/code/ryzom/server/backup_service_default.cfg
index 6e8263dca..3e73c8928 100644
--- a/code/ryzom/server/backup_service_default.cfg
+++ b/code/ryzom/server/backup_service_default.cfg
@@ -1,22 +1,23 @@
#include "common.cfg"
-
-// ---- service NeL variables (used by ConfigFile class)
-
+
+// ---- service NeL variables (used by ConfigFile class)
+
DontUseNS = 1;
-// ---- service NeL variables (used by CVariable class)
+// ---- service NeL variables (used by CVariable class)
ListeningPort = 49990;
-
-// ---- service custom variables (used by ConfigFile class)
-
+
+// ---- service custom variables (used by ConfigFile class)
+
// Listening port for the Web server to connect in
-
+
WebPort = 49898;
-
+
BSReadState = 1;
-
-
// ---- service custom variables (used by CVariable class)
+
+
+// ---- service custom variables (used by CVariable class)
// Port for the Layer 3 interface of the backup service
L3ListeningPort = 49950;
@@ -25,7 +26,7 @@ L3ListeningPort = 49950;
SaveTemplatePath = "$shard/characters/account_$userid_$charid$ext";
// character saves possible extension list
-SaveExtList = "_pdr.bin _pdr.xml .bin";
+SaveExtList = "_pdr.bin _pdr.xml .bin";
//BSFilePrefix = "R:/code/ryzom/r2_shard/";
//BSFileSubst = "r2_shard/";
diff --git a/code/ryzom/server/common.cfg b/code/ryzom/server/common.cfg
index 2c209c152..4dac4468d 100644
--- a/code/ryzom/server/common.cfg
+++ b/code/ryzom/server/common.cfg
@@ -4,7 +4,7 @@
ShardId = 302;
// Used by CVariable in WS
-PlayerLimit = 5000;
+PlayerLimit = 5000;
// Used to connect to AES (this file) and to set up AES service (admin_executor_service.cfg)
AESPort="46702";
@@ -96,4 +96,5 @@ WriteFilesDirectory = "data_shard";
// ---- service custom variables (used by ConfigFile class)
-
// ---- service custom variables (used by CVariable class)
+
+// ---- service custom variables (used by CVariable class)
diff --git a/code/ryzom/server/entities_game_service_default.cfg b/code/ryzom/server/entities_game_service_default.cfg
index 82cb40d1d..3016a6f99 100644
--- a/code/ryzom/server/entities_game_service_default.cfg
+++ b/code/ryzom/server/entities_game_service_default.cfg
@@ -22,22 +22,22 @@ StartCommands +=
"lgs_gw.transportAdd L3Client masterL3c",
// open the transport
"lgs_gw.transportCmd masterL3c(connect addr="+MasterLGSHost+":"+L3MasterLGSPort+")",
-};
-
+};
+
#ifndef DONT_USE_LGS_SLAVE
-
+
StartCommands +=
{
// add a layer 3 server transport for slave logger service
"lgs_gw.transportAdd L3Client slaveL3c",
// open the transport
"lgs_gw.transportCmd slaveL3c(connect addr="+SlaveLGSHost+":"+L3SlaveLGSPort+")",
-};
-
+};
+
#endif
-
+
StartCommands +=
-{
+{
// Create a shard unifier client module
"moduleManager.createModule ShardUnifierClient suc",
// Create a client commands forwader module
diff --git a/code/ryzom/server/gpm_service_default.cfg b/code/ryzom/server/gpm_service_default.cfg
index ddca7f76d..a6835c65c 100644
--- a/code/ryzom/server/gpm_service_default.cfg
+++ b/code/ryzom/server/gpm_service_default.cfg
@@ -1,5 +1,5 @@
#include "common.cfg"
-
+
CheckPlayerSpeed = 0;
SecuritySpeedFactor = 1.5;
diff --git a/code/ryzom/server/input_output_service_default.cfg b/code/ryzom/server/input_output_service_default.cfg
index ba819ad8f..54aaaafe8 100644
--- a/code/ryzom/server/input_output_service_default.cfg
+++ b/code/ryzom/server/input_output_service_default.cfg
@@ -1,6 +1,6 @@
#include "common.cfg"
-
-// ---- service NeL variables (used by ConfigFile class)
+
+// ---- service NeL variables (used by ConfigFile class)
StartCommands +=
{
@@ -23,22 +23,22 @@ StartCommands +=
"lgs_gw.transportAdd L3Client masterL3c",
// open the transport
"lgs_gw.transportCmd masterL3c(connect addr="+MasterLGSHost+":"+L3MasterLGSPort+")",
-};
-
+};
+
#ifndef DONT_USE_LGS_SLAVE
-
+
StartCommands +=
-{
+{
// add a layer 3 server transport for slave logger service
"lgs_gw.transportAdd L3Client slaveL3c",
// open the transport
"lgs_gw.transportCmd slaveL3c(connect addr="+SlaveLGSHost+":"+L3SlaveLGSPort+")",
-};
-
+};
+
#endif
-
+
StartCommands +=
-{
+{
// Create a chat unifier client
"moduleManager.createModule ChatUnifierClient cuc",
@@ -52,33 +52,34 @@ StartCommands +=
};
#endif
-
-// ---- service NeL variables (used by CVariable class)
-
-// ---- service custom variables (used by ConfigFile class)
-
+
+// ---- service NeL variables (used by CVariable class)
+
+// ---- service custom variables (used by ConfigFile class)
+
// a list of system command that can be run with "sysCmd" service command.
SystemCmd = {};
-
+
// IOS don't use work directory by default
ReadTranslationWork = 0;
TranslationWorkPath = "translation/work";
-
+
// Global shard bot name translation file. You sould overide this
// in input_output_service.cfg to specialize the file
// depending on the shard main language.
BotNameTranslationFile = "bot_names.txt";
-
+
// Global shard event faction translation file. You sould override this
// in input_output_service.cfg to specialize the file
// depending on the shard main language.
EventFactionTranslationFile = "event_factions.txt";
-
-
// ---- service custom variables (used by CVariable class)
+
+
+// ---- service custom variables (used by CVariable class)
// Activate/deactivate debugging of missing paremeter replacement
DebugReplacementParameter = 1;
-
+
// Default verbose debug flags:
//-----------------------------
diff --git a/code/ryzom/server/mail_forum_service_default.cfg b/code/ryzom/server/mail_forum_service_default.cfg
index a76b710be..cd986d964 100644
--- a/code/ryzom/server/mail_forum_service_default.cfg
+++ b/code/ryzom/server/mail_forum_service_default.cfg
@@ -1,14 +1,15 @@
#include "common.cfg"
-
-// ---- service NeL variables (used by ConfigFile class)
-
+
+// ---- service NeL variables (used by ConfigFile class)
+
DontUseNS = 1;
-
-// ---- service NeL variables (used by CVariable class)
-
-// ---- service custom variables (used by ConfigFile class)
-
-
// ---- service custom variables (used by CVariable class)
+
+// ---- service NeL variables (used by CVariable class)
+
+// ---- service custom variables (used by ConfigFile class)
+
+
+// ---- service custom variables (used by CVariable class)
WebRootDirectory = "save_shard/www";
diff --git a/code/ryzom/server/mirror_service_default.cfg b/code/ryzom/server/mirror_service_default.cfg
index 38f2f169a..159ee90d4 100644
--- a/code/ryzom/server/mirror_service_default.cfg
+++ b/code/ryzom/server/mirror_service_default.cfg
@@ -1,6 +1,6 @@
#include "common.cfg"
-// ---- service custom variables (used by ConfigFile class)
-
+// ---- service custom variables (used by ConfigFile class)
+
// Linux only
DestroyGhostSegments = 1;
diff --git a/code/ryzom/server/session_browser_server.cfg b/code/ryzom/server/session_browser_server.cfg
index 63fa70daf..c784e581e 100644
--- a/code/ryzom/server/session_browser_server.cfg
+++ b/code/ryzom/server/session_browser_server.cfg
@@ -46,4 +46,5 @@ HomeMainlandNames =
// The max number of ring points (aka ring access) for each ecosystem
MaxRingPoints = "A1:D7:F7:J8:L6:R13";
-
// ---- service custom variables (used by CVariable class)
+
+// ---- service custom variables (used by CVariable class)
diff --git a/code/ryzom/server/shard_unifier_service_default.cfg b/code/ryzom/server/shard_unifier_service_default.cfg
index a9a1923e8..7e35b61f9 100644
--- a/code/ryzom/server/shard_unifier_service_default.cfg
+++ b/code/ryzom/server/shard_unifier_service_default.cfg
@@ -1,7 +1,7 @@
#include "common.cfg"
DontUseNS = 1;
-
+
StartCommands +=
{
// Create a gateway for global interconnection
diff --git a/code/ryzom/server/src/entities_game_service/player_manager/character.cpp b/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
index 51d6a9c39..cca9cbb3b 100644
--- a/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
+++ b/code/ryzom/server/src/entities_game_service/player_manager/character.cpp
@@ -7501,7 +7501,6 @@ void CCharacter::sendUserChar( uint32 userId, uint8 scenarioSeason, const R2::TU
}
}
-
//-----------------------------------------------
// Return the home mainland session id for a character
TSessionId CCharacter::getHomeMainlandSessionId() const
From 65a3946ea80ef31362a4067dcc6fff897b26fff2 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 6 Oct 2012 17:12:23 +0200
Subject: [PATCH 056/125] Fixed: #1498 Client fails to switch shortcut bars on
ctrl + number hotkeys
---
code/ryzom/client/src/interface_v3/action_handler_phrase.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/ryzom/client/src/interface_v3/action_handler_phrase.cpp b/code/ryzom/client/src/interface_v3/action_handler_phrase.cpp
index 46dbb8c2c..26676a556 100644
--- a/code/ryzom/client/src/interface_v3/action_handler_phrase.cpp
+++ b/code/ryzom/client/src/interface_v3/action_handler_phrase.cpp
@@ -1611,7 +1611,7 @@ public:
virtual void execute(CCtrlBase * /* pCaller */, const string &Params)
{
CInterfaceManager *pIM= CInterfaceManager::getInstance();
- CCDBNodeLeaf *node= pIM->getDbProp("UI:PHRASE:SELECT_MEMORY_", false);
+ CCDBNodeLeaf *node= pIM->getDbProp("UI:PHRASE:SELECT_MEMORY", false);
if(node)
{
sint32 val;
From 25dd379d7eb8fa87235175138ecb005dccaf32db Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 6 Oct 2012 17:17:26 +0200
Subject: [PATCH 057/125] Changed: Replaced string empty comparisons with
empty()
---
code/nel/src/3d/cloud_scape.cpp | 2 +-
code/nel/src/3d/cluster.cpp | 2 +-
code/nel/src/3d/zone_manager.cpp | 2 +-
code/nel/src/net/varpath.cpp | 4 ++--
code/nel/src/pacs/retriever_bank.h | 2 +-
.../client/src/interface_v3/action_handler_phrase.cpp | 2 +-
code/ryzom/client/src/interface_v3/interface_manager.cpp | 2 +-
.../client/src/interface_v3/item_consumable_effect.cpp | 2 +-
code/ryzom/client/src/interface_v3/lua_ihm.cpp | 2 +-
code/ryzom/client/src/interface_v3/view_renderer.cpp | 6 +++---
code/ryzom/client/src/pacs_client.cpp | 2 +-
code/ryzom/client/src/r2/editor.cpp | 2 +-
code/ryzom/common/src/game_share/generic_xml_msg_mngr.h | 2 +-
code/ryzom/common/src/game_share/object.cpp | 8 ++++----
.../ryzom/common/src/game_share/scenario_entry_points.cpp | 2 +-
15 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/code/nel/src/3d/cloud_scape.cpp b/code/nel/src/3d/cloud_scape.cpp
index 5a4b92155..77d046eec 100644
--- a/code/nel/src/3d/cloud_scape.cpp
+++ b/code/nel/src/3d/cloud_scape.cpp
@@ -193,7 +193,7 @@ void SCloudTextureClamp::init (uint32 nWidth, uint32 nHeight, uint32 nDepth, con
Mem = new uint8[NbW*Width*NbH*Height];
uint32 i, j;
- if (filename == "")
+ if (filename.empty())
{
// No filename so init with default
for (i = 0; i < NbW; ++i)
diff --git a/code/nel/src/3d/cluster.cpp b/code/nel/src/3d/cluster.cpp
index 2faebcec7..76ed153e1 100644
--- a/code/nel/src/3d/cluster.cpp
+++ b/code/nel/src/3d/cluster.cpp
@@ -307,7 +307,7 @@ void CCluster::serial (NLMISC::IStream&f)
_SoundGroupId = CStringMapper::map(soundGroup);
f.serial(envFxName);
- if (envFxName == "")
+ if (envFxName.empty())
envFxName = "no fx";
_EnvironmentFxId = CStringMapper::map(envFxName);
}
diff --git a/code/nel/src/3d/zone_manager.cpp b/code/nel/src/3d/zone_manager.cpp
index 6c0a727f2..efa36fa66 100644
--- a/code/nel/src/3d/zone_manager.cpp
+++ b/code/nel/src/3d/zone_manager.cpp
@@ -237,7 +237,7 @@ void CZoneLoadingTask::run(void)
{
// Lookup the zone
string zonePathLookup = CPath::lookup (_ZoneName, false, false, true);
- if (zonePathLookup == "")
+ if (zonePathLookup.empty())
zonePathLookup = _ZoneName;
CZone *ZoneTmp = new CZone;
diff --git a/code/nel/src/net/varpath.cpp b/code/nel/src/net/varpath.cpp
index 8bee387cd..d1ce0bcf3 100644
--- a/code/nel/src/net/varpath.cpp
+++ b/code/nel/src/net/varpath.cpp
@@ -89,7 +89,7 @@ void CVarPath::decode ()
string val = getToken ();
- if (val == "")
+ if (val.empty())
return;
if (val == "[" )
@@ -105,7 +105,7 @@ void CVarPath::decode ()
osbnb++;
// end of token
- if (val == "")
+ if (val.empty())
{
nlwarning ("VP: Bad VarPath '%s', suppose it s an empty varpath", RawVarPath.c_str());
Destination.clear ();
diff --git a/code/nel/src/pacs/retriever_bank.h b/code/nel/src/pacs/retriever_bank.h
index 3dacb2463..eb7afb31b 100644
--- a/code/nel/src/pacs/retriever_bank.h
+++ b/code/nel/src/pacs/retriever_bank.h
@@ -142,7 +142,7 @@ public:
for (i=0; igetSPhraseId();
sint32 dstMacroId= pCSDst->getMacroId();
- if ((src == "") && (CHandlerPhraseMemoryCopy::haveLastPhraseElement))
+ if (src.empty() && (CHandlerPhraseMemoryCopy::haveLastPhraseElement))
{
// get the slot ids from save
srcIsMacro= CHandlerPhraseMemoryCopy::isMacro;
diff --git a/code/ryzom/client/src/interface_v3/interface_manager.cpp b/code/ryzom/client/src/interface_v3/interface_manager.cpp
index a9a901283..52c185b58 100644
--- a/code/ryzom/client/src/interface_v3/interface_manager.cpp
+++ b/code/ryzom/client/src/interface_v3/interface_manager.cpp
@@ -1563,7 +1563,7 @@ bool CInterfaceManager::loadConfig (const string &filename)
CIFile f;
string sFileName;
sFileName = NLMISC::CPath::lookup (filename, false);
- if (sFileName == "" || !f.open(sFileName))
+ if (sFileName.empty() || !f.open(sFileName))
return false;
diff --git a/code/ryzom/client/src/interface_v3/item_consumable_effect.cpp b/code/ryzom/client/src/interface_v3/item_consumable_effect.cpp
index 52a3f64b7..6e50666b1 100644
--- a/code/ryzom/client/src/interface_v3/item_consumable_effect.cpp
+++ b/code/ryzom/client/src/interface_v3/item_consumable_effect.cpp
@@ -43,7 +43,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
{
CSString eff = pIS->Consumable.Properties[i];
- if (eff == "")
+ if (eff.empty())
continue;
// Get name id of effect
diff --git a/code/ryzom/client/src/interface_v3/lua_ihm.cpp b/code/ryzom/client/src/interface_v3/lua_ihm.cpp
index c0500eeb7..9e5160a4e 100644
--- a/code/ryzom/client/src/interface_v3/lua_ihm.cpp
+++ b/code/ryzom/client/src/interface_v3/lua_ihm.cpp
@@ -1228,7 +1228,7 @@ void CLuaIHM::createLuaEnumTable(CLuaState &ls, const std::string &str)
p = s.splitTo('.', true);
while (p.size() > 0)
{
- if (path == "")
+ if (path.empty())
path = p;
else
path += "." + p;
diff --git a/code/ryzom/client/src/interface_v3/view_renderer.cpp b/code/ryzom/client/src/interface_v3/view_renderer.cpp
index 3655697b6..8be60402a 100644
--- a/code/ryzom/client/src/interface_v3/view_renderer.cpp
+++ b/code/ryzom/client/src/interface_v3/view_renderer.cpp
@@ -707,7 +707,7 @@ void CViewRenderer::loadTextures (const std::string &textureFileName, const std:
SGlobalTexture gt;
// Load texture file
string filename = CPath::lookup (textureFileName, false);
- if (filename == "") return;
+ if (filename.empty()) return;
CIFile ifTmp;
if (ifTmp.open(filename))
CBitmap::loadSize (ifTmp, gt.Width, gt.Height);
@@ -724,7 +724,7 @@ void CViewRenderer::loadTextures (const std::string &textureFileName, const std:
// Load uv file
CIFile iFile;
filename = CPath::lookup (uvFileName, false);
- if (filename == "") return;
+ if (filename.empty()) return;
if (!iFile.open(filename)) return;
_GlobalTextures.push_back (gt);
@@ -866,7 +866,7 @@ sint32 CViewRenderer::createTexture (const std::string &sGlobalTextureName,
SGlobalTexture gtTmp;
gtTmp.FromGlobaleTexture = false;
string filename = CPath::lookup (sLwrGTName, false);
- if (filename == "") return -1;
+ if (filename.empty()) return -1;
CIFile ifTmp;
if (ifTmp.open(filename))
{
diff --git a/code/ryzom/client/src/pacs_client.cpp b/code/ryzom/client/src/pacs_client.cpp
index 04fd5cae9..5924cc935 100644
--- a/code/ryzom/client/src/pacs_client.cpp
+++ b/code/ryzom/client/src/pacs_client.cpp
@@ -139,7 +139,7 @@ UInstanceGroup *getCluster(const UGlobalPosition &gp)
return 0;
const string &strPos = GR->getIdentifier(gp);
- if(strPos == "")
+ if(strPos.empty())
return 0;
// try to find the ig in the loaded ig map
std::map::const_iterator igIt = IGLoaded.find(strlwr(strPos));
diff --git a/code/ryzom/client/src/r2/editor.cpp b/code/ryzom/client/src/r2/editor.cpp
index e8db1b390..24d8f06c0 100644
--- a/code/ryzom/client/src/r2/editor.cpp
+++ b/code/ryzom/client/src/r2/editor.cpp
@@ -6603,7 +6603,7 @@ NLMISC::CVectorD getVectorD(const CObject *obj)
CObject *buildVector(const NLMISC::CVectorD &vector, const std::string &instanceId /*= ""*/)
{
CObject *table;
- if (instanceId == "")
+ if (instanceId.empty())
{
table = getEditor().getDMC().newComponent("Position");
table->set("x", vector.x);
diff --git a/code/ryzom/common/src/game_share/generic_xml_msg_mngr.h b/code/ryzom/common/src/game_share/generic_xml_msg_mngr.h
index feb8baed7..a6a6a7167 100644
--- a/code/ryzom/common/src/game_share/generic_xml_msg_mngr.h
+++ b/code/ryzom/common/src/game_share/generic_xml_msg_mngr.h
@@ -470,7 +470,7 @@ protected:
/// display nodes
void xmlDisplay()
{
- std::string ntype = (Name == "" ? "client_messages_description" : NbBits == 0 ? "leaf" : "branch");
+ std::string ntype = (Name.empty() ? "client_messages_description" : NbBits == 0 ? "leaf" : "branch");
nlinfo("<%s name=\"%s\" description=\"%s\">", ntype.c_str(), Name.c_str(), Description.c_str());
diff --git a/code/ryzom/common/src/game_share/object.cpp b/code/ryzom/common/src/game_share/object.cpp
index 1537a9995..6d1feb2fe 100644
--- a/code/ryzom/common/src/game_share/object.cpp
+++ b/code/ryzom/common/src/game_share/object.cpp
@@ -483,7 +483,7 @@ bool CObject::getShortestName(std::string &instanceId, std::string &attrName, si
nlassert(index != -1);
instanceId = parent->getAttr("InstanceId")->toString();
attrName = parent->getKey(index);
- if (attrName == "")
+ if (attrName.empty())
{
position = index;
}
@@ -501,7 +501,7 @@ bool CObject::getShortestName(std::string &instanceId, std::string &attrName, si
nlassert(index2 != -1);
sint32 index = parent->findIndex(this);
nlassert(index != -1);
- if (parent2->getKey(index2) == "")
+ if (parent2->getKey(index2).empty())
{
nlassert(0); // TMP : want to see if may possibly happen
return false;
@@ -1092,7 +1092,7 @@ void CObjectTable::doSerialize(std::string& out, CSerializeContext& context) co
if ( _Value[i].second->isString("Name")
&& _Value[i].second->isString("LocationId")
&& _Value[i].second->toString("Name") == "Permanent"
- && _Value[i].second->toString("LocationId") == "")
+ && _Value[i].second->toString("LocationId").empty())
{
isDefault = true;
}
@@ -1248,7 +1248,7 @@ bool CObjectTable::setObject(const std::string& key, CObject* value)
//H_AUTO(R2_CObjectTable_setObject)
CHECK_TABLE_INTEGRITY
value->setGhost(this->getGhost());
- if (key == "")
+ if (key.empty())
{
clear();
diff --git a/code/ryzom/common/src/game_share/scenario_entry_points.cpp b/code/ryzom/common/src/game_share/scenario_entry_points.cpp
index 886a5ac6b..f68b1d6f8 100644
--- a/code/ryzom/common/src/game_share/scenario_entry_points.cpp
+++ b/code/ryzom/common/src/game_share/scenario_entry_points.cpp
@@ -406,7 +406,7 @@ void CScenarioEntryPoints::loadFromXMLFile()
nlinfo("Different packages for island '%s' in file %s", island, _EntryPointsFilename.c_str());
}
}
- if(package == "")
+ if(package.empty())
nlinfo("no 'package' tag in %s island", island);
else
completeIsland.Package = CSString(package);
From d8c7fa52f9bd8fe17c154da26321237b44c7da17 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sat, 6 Oct 2012 18:17:57 +0200
Subject: [PATCH 058/125] Changed: Replaced string empty comparisons with
empty()
---
code/nel/src/net/message_recorder.cpp | 2 +-
code/nel/src/net/varpath.cpp | 2 +-
.../sound/source_sounds_builder/SoundPage.cpp | 2 +-
.../source_sounds_builderDlg.cpp | 8 +--
.../client/src/animated_scene_object.cpp | 6 +-
code/ryzom/common/src/game_share/object.cpp | 2 +-
.../src/ai_service/npc_description_msg.cpp | 2 +-
.../src/entities_game_service/admin.cpp | 2 +-
.../creature_manager/creature_manager.cpp | 2 +-
.../shop_type/shop_type_manager.cpp | 4 +-
.../src/input_output_service/chat_manager.cpp | 2 +-
.../tools/leveldesign/mp_generator/main.cpp | 56 +++++++++----------
.../named_items_2_csv/named_items_2_csv.cpp | 12 ++--
.../world_editor/dialog_properties.cpp | 2 +-
14 files changed, 52 insertions(+), 52 deletions(-)
diff --git a/code/nel/src/net/message_recorder.cpp b/code/nel/src/net/message_recorder.cpp
index 4da49cb3e..ec52ad1da 100644
--- a/code/nel/src/net/message_recorder.cpp
+++ b/code/nel/src/net/message_recorder.cpp
@@ -80,7 +80,7 @@ CMessageRecorder::CMessageRecorder() : _RecordAll(true)
*/
CMessageRecorder::~CMessageRecorder()
{
- if ( _Filename != "" )
+ if ( !_Filename.empty() )
{
nldebug( "MR:%s: End of recording", _Filename.c_str() );
}
diff --git a/code/nel/src/net/varpath.cpp b/code/nel/src/net/varpath.cpp
index d1ce0bcf3..729f52074 100644
--- a/code/nel/src/net/varpath.cpp
+++ b/code/nel/src/net/varpath.cpp
@@ -143,7 +143,7 @@ void CVarPath::decode ()
Destination.push_back (make_pair(RawVarPath, string("")));
return;
}
- else if (val != "." && val != "" && val != "=")
+ else if (val != "." && !val.empty() && val != "=")
{
nlwarning ("VP: Malformated VarPath '%s' before position %d", RawVarPath.c_str (), TokenPos);
return;
diff --git a/code/nel/tools/sound/source_sounds_builder/SoundPage.cpp b/code/nel/tools/sound/source_sounds_builder/SoundPage.cpp
index 2664bc033..0ad410098 100644
--- a/code/nel/tools/sound/source_sounds_builder/SoundPage.cpp
+++ b/code/nel/tools/sound/source_sounds_builder/SoundPage.cpp
@@ -413,7 +413,7 @@ void CSoundPage::apply()
nlassert( _Tree );
- if ( m_Filename != "" )
+ if ( !m_Filename.empty() )
{
CString s = ((CSource_sounds_builderDlg*)GetOwner())->SoundName( _HItem ) + " (" + m_Filename + ")";
_Tree->SetItemText( _HItem, s );
diff --git a/code/nel/tools/sound/source_sounds_builder/source_sounds_builderDlg.cpp b/code/nel/tools/sound/source_sounds_builder/source_sounds_builderDlg.cpp
index e5643fba4..2ba1b70a5 100644
--- a/code/nel/tools/sound/source_sounds_builder/source_sounds_builderDlg.cpp
+++ b/code/nel/tools/sound/source_sounds_builder/source_sounds_builderDlg.cpp
@@ -364,7 +364,7 @@ CString CSource_sounds_builderDlg::SoundName( HTREEITEM hitem )
{
CString s = m_Tree.GetItemText( hitem );
sint last;
- if ( s != "" )
+ if ( !s.empty() )
{
if ( s[s.GetLength()-1] == '*' )
{
@@ -425,13 +425,13 @@ void CSource_sounds_builderDlg::OnSave()
}
nameset.insert( (*ips)->getName() );
}
- if ( duplicates != "" )
+ if ( !duplicates.empty() )
{
CString s;
s.Format( "Warning: the following names are duplicates. The first occurence of each one was not written in the output file. Correct the names and save again:\n\n%s", duplicates.c_str() );
AfxMessageBox( s, MB_ICONWARNING );
}
- if ( blanksounds != "" )
+ if ( !blanksounds.empty() )
{
CString s;
s.Format( "Warning: the following sounds have no wave file specified:\n\n%s", blanksounds.c_str() );
@@ -569,7 +569,7 @@ void CSource_sounds_builderDlg::OnImport()
if ( hitem == NULL )
{
string sname = string(name);
- if ( sname != "" ) // prevent from taking blank names
+ if ( !sname.empty() ) // prevent from taking blank names
{
AddSound( sname.c_str() );
}
diff --git a/code/ryzom/client/src/animated_scene_object.cpp b/code/ryzom/client/src/animated_scene_object.cpp
index 6367830db..9e1b4273c 100644
--- a/code/ryzom/client/src/animated_scene_object.cpp
+++ b/code/ryzom/client/src/animated_scene_object.cpp
@@ -105,7 +105,7 @@ CAnimatedSceneObject::CAnimatedSceneObject( const string& ObjectName, const stri
}
// load skeleton, bind mesh and init position, rotation, cluster
- if(_SkeletonName != "" )
+ if(!_SkeletonName.empty())
{
_Skeleton = Scene->createSkeleton(_SkeletonName);
if( _Skeleton == NULL )
@@ -340,12 +340,12 @@ void CAnimatedSceneObject::resetInitialPos( void )
// Destructor
CAnimatedSceneObject::~CAnimatedSceneObject()
{
- if( _Instance != NULL && _MeshName != "" )
+ if( _Instance != NULL && !_MeshName.empty() )
{
Scene->deleteInstance( _Instance );
}
- if( _Skeleton != NULL && _SkeletonName != "" )
+ if( _Skeleton != NULL && !_SkeletonName.empty() )
{
Scene->deleteSkeleton( _Skeleton );
}
diff --git a/code/ryzom/common/src/game_share/object.cpp b/code/ryzom/common/src/game_share/object.cpp
index 6d1feb2fe..a034ddb2e 100644
--- a/code/ryzom/common/src/game_share/object.cpp
+++ b/code/ryzom/common/src/game_share/object.cpp
@@ -602,7 +602,7 @@ bool CObjectString::set(const std::string& key, const std::string & value)
bool CObjectString::setObject(const std::string& key, CObject* value)
{
//H_AUTO(R2_CObjectString_setObject)
- BOMB_IF( key != "" || ! (value->isString() || value->isNumber()) , "Try to set the a sub value of an object that does not allowed it", return false);
+ BOMB_IF( !key.empty() || ! (value->isString() || value->isNumber()) , "Try to set the a sub value of an object that does not allowed it", return false);
bool canSet = set(key, value->toString());
if (canSet)
{
diff --git a/code/ryzom/server/src/ai_service/npc_description_msg.cpp b/code/ryzom/server/src/ai_service/npc_description_msg.cpp
index a5a90ad29..62ba4d9f8 100644
--- a/code/ryzom/server/src/ai_service/npc_description_msg.cpp
+++ b/code/ryzom/server/src/ai_service/npc_description_msg.cpp
@@ -128,7 +128,7 @@ static bool LookupShopType(std::string name,std::vector &shopList)
uint i;
for ( i=0; i < cvShopType.size(); ++i )
{
- if ( cvShopType.asString(i) != "" )
+ if ( !cvShopType.asString(i).empty() )
{
// make sure the string doesn't turn up more than once in input data
for (uint j=0;jasString();
string page = varPage->asString();
- if (host == "" || page == "")
+ if (host.empty() || page.empty())
return;
char params[1024];
diff --git a/code/ryzom/server/src/entities_game_service/creature_manager/creature_manager.cpp b/code/ryzom/server/src/entities_game_service/creature_manager/creature_manager.cpp
index 3def0fde0..7c0dc7780 100644
--- a/code/ryzom/server/src/entities_game_service/creature_manager/creature_manager.cpp
+++ b/code/ryzom/server/src/entities_game_service/creature_manager/creature_manager.cpp
@@ -117,7 +117,7 @@ void CGenNpcDescMsgImp::callback (const std::string &serviceName, NLNET::TServic
//if the creature has a user model and if the user model's script contains parse errors, change
//the creature's name to
- if (_UserModelId != "" && CDynamicSheetManager::getInstance()->scriptErrors(_PrimAlias, _UserModelId) == true)
+ if (!_UserModelId.empty() && CDynamicSheetManager::getInstance()->scriptErrors(_PrimAlias, _UserModelId) == true)
{
TDataSetRow row = creature->getEntityRowId();
ucstring name;
diff --git a/code/ryzom/server/src/entities_game_service/shop_type/shop_type_manager.cpp b/code/ryzom/server/src/entities_game_service/shop_type/shop_type_manager.cpp
index 504462410..6b1aa0d9d 100644
--- a/code/ryzom/server/src/entities_game_service/shop_type/shop_type_manager.cpp
+++ b/code/ryzom/server/src/entities_game_service/shop_type/shop_type_manager.cpp
@@ -242,7 +242,7 @@ void CShopTypeManager::initShopBase()
CConfigFile::CVar& cvShopType = ShopConfigFile.getVar("ShopCategory");
for (uint i = 0; i < cvShopType.size(); ++i )
{
- if ( cvShopType.asString(i) != "" )
+ if ( !cvShopType.asString(i).empty() )
{
_CategoryName.push_back( cvShopType.asString( i ) );
}
@@ -252,7 +252,7 @@ void CShopTypeManager::initShopBase()
CConfigFile::CVar& cvShopAlias = ShopConfigFile.getVar("ShopNameAliases");
for ( uint i = 0; i < cvShopAlias.size(); ++i )
{
- if ( cvShopAlias.asString(i) != "" )
+ if ( !cvShopAlias.asString(i).empty() )
{
CVectorSString args;
explode(cvShopAlias.asString(i), string(":"), reinterpret_cast &>(args));
diff --git a/code/ryzom/server/src/input_output_service/chat_manager.cpp b/code/ryzom/server/src/input_output_service/chat_manager.cpp
index f86ec26e6..27d1c55e8 100644
--- a/code/ryzom/server/src/input_output_service/chat_manager.cpp
+++ b/code/ryzom/server/src/input_output_service/chat_manager.cpp
@@ -132,7 +132,7 @@ void CChatManager::onServiceDown(const std::string &serviceShortName)
*/
void CChatManager::resetChatLog()
{
- std::string logPath = (LogChatDirectory.get() == "" ? Bsi.getLocalPath() : LogChatDirectory.get());
+ std::string logPath = (LogChatDirectory.get().empty() ? Bsi.getLocalPath() : LogChatDirectory.get());
_Displayer.setParam(CPath::standardizePath(logPath) + "chat.log");
}
diff --git a/code/ryzom/tools/leveldesign/mp_generator/main.cpp b/code/ryzom/tools/leveldesign/mp_generator/main.cpp
index bcf7fdf52..e61546a8d 100644
--- a/code/ryzom/tools/leveldesign/mp_generator/main.cpp
+++ b/code/ryzom/tools/leveldesign/mp_generator/main.cpp
@@ -113,13 +113,13 @@ void LoadCraftParts()
data.readFromFile( "rm_item_parts.csv" );
- while ( data != "" )
+ while ( !data.empty() )
{
ligne = data.splitTo( "\n", true );
// on recherche la ligne correspondant à notre craft part
info = ligne.splitTo( ";", true );
- if ( info != "" )
+ if ( !info.empty() )
{
index = info.c_str()[0] - 'A';
@@ -179,13 +179,13 @@ void InitCreatureMP()
data.readFromFile( "creature_models.csv" );
- while ( data != "" )
+ while ( !data.empty() )
{
ligneN = data.splitTo( "\n", true );
ligneM = data.splitTo( "\n", true );
// on vérifie que la ligne est valide
- if ( ligneN.splitTo( ";", true ) != "" )
+ if ( !ligneN.splitTo( ";", true ).empty() )
{
ligneM.splitTo( ";", true );
@@ -195,7 +195,7 @@ void InitCreatureMP()
ligneN.splitTo( ";", true );
ligneM.splitTo( ";", true );
- while ( ligneN != "" )
+ while ( !ligneN.empty() )
{
ListeCreatureMP listeCreatureMP;
@@ -426,7 +426,7 @@ int GetNumeroMP( const CSString& nomMP )
result = FamilyTypContent.splitFrom( buffer );
// si oui, on retourne son numéro de MP
- if ( result != "" )
+ if ( !result.empty() )
res = result.splitTo( "\"" ).atoi();
else
{
@@ -478,7 +478,7 @@ int GetNumeroGroupe( const CSString& groupe )
result = GroupTypContent.splitFrom( buffer );
// si oui, on retourne son numéro de groupe
- if ( result != "" )
+ if ( !result.empty() )
res = result.splitTo( "\"" ).atoi();
else
{
@@ -557,14 +557,14 @@ void CreateParentSItem( int numMP,
// 3d
output += " \n";
- if ( icon != "" )
+ if ( !icon.empty() )
{
output += " \n";
}
- if ( overlay != "" )
+ if ( !overlay.empty() )
{
output += " \n";
if(craftStats.UsedAsCraftRequirement)
@@ -894,7 +894,7 @@ void CreateSheet( int numMP, const CSString& nomMP,
CSString statEnergy;
if ( ( variation == 2 ) && ( numMP == 695 ) ) // cas particulier pour le kitin trophy (beurk)
statEnergy = "0";
- else if ( !creature || ( craftStats.Craft == "" ) )
+ else if ( !creature || ( craftStats.Craft.empty() ) )
statEnergy = toString( "%d", GetStatEnergy( level ) );
else if ( variation < 2 )
statEnergy = toString( "%d", GetStatEnergy( level + 1 ) );
@@ -912,7 +912,7 @@ void CreateSheet( int numMP, const CSString& nomMP,
outputFileName = toString( "m%04d%s%c%c%02d", numMP, code.c_str(), eco, 'a' + level, variation );
output = outputFileName;
- GenerateItemNames( nomMP, eco, level, ( craftStats.Craft == "" ), creature, itemName );
+ GenerateItemNames( nomMP, eco, level, ( craftStats.Craft.empty() ), creature, itemName );
output += "\t" + itemName;
itemNames.insert( output );
}
@@ -947,7 +947,7 @@ void GenerateDepositItems( int numMP, const CSString& nomMP, const MPCraftStats&
code = "cxx";
// pas de craft = items de mission
- if ( craftStats.Craft == "" )
+ if ( craftStats.Craft.empty() )
{
if ( loc != "G" )
CreateSheet( numMP, nomMP, code, 'c', 0, craftStats );
@@ -1000,7 +1000,7 @@ void GenerateCreatureItems( int numMP, CSString& nomMP, const MPCraftStats& craf
CSString creatureFileName = "c";
creatureFileName += (*itMP)->codeCreature.toLower();
- if ( craftStats.Craft != "" )
+ if ( !craftStats.Craft.empty() )
{
quality = statQuality[creatureLevel-1];
if ( quality != 6 )
@@ -1107,7 +1107,7 @@ void NewMP( CSString& ligne )
// nouveau nom de famille
nomMP = ligne.splitTo( ";", true );
- if ( nomMP == "" )
+ if ( nomMP.empty() )
{
// cette ligne ne contient pas d'info
return;
@@ -1126,37 +1126,37 @@ void NewMP( CSString& ligne )
ligne.splitTo( ";", true );
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.bestStatA = stat.atoi();
else
craftStats.bestStatA = -1;
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.worstStatA1 = stat.atoi();
else
craftStats.worstStatA1 = -1;
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.worstStatA2 = stat.atoi();
else
craftStats.worstStatA2 = -1;
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.bestStatB = stat.atoi();
else
craftStats.bestStatB = -1;
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.worstStatB1 = stat.atoi();
else
craftStats.worstStatB1 = -1;
stat = ligne.splitTo( ";", true );
- if ( stat.firstWord() != "" )
+ if ( !stat.firstWord().empty() )
craftStats.worstStatB2 = stat.atoi();
else
craftStats.worstStatB2 = -1;
@@ -1168,19 +1168,19 @@ void NewMP( CSString& ligne )
specialOnly = stat.firstWord().contains( "x" );
// cas particuliers
- while ( ligne != "" )
+ while ( !ligne.empty() )
{
if ( !ligne.contains( ";" ) )
{
special = ligne;
- if ( special.firstWord() != "" )
+ if ( !special.firstWord().empty() )
specialNames.insert( special );
ligne = "";
}
else
{
special = ligne.splitTo( ";", true );
- if ( special != "" )
+ if ( !special.empty() )
specialNames.insert( special );
}
}
@@ -1357,7 +1357,7 @@ void LoadCustomizedProperties()
fileName = CPath::lookup( name, false, false, true );
// on vérifie que le fichier concerné existe
- if ( fileName != "" )
+ if ( !fileName.empty() )
{
CSString zone = prop.splitTo( ".", true );
str.readFromFile( fileName );
@@ -1530,7 +1530,7 @@ void LoadFamillesMP()
ligne = fileData.splitTo( "\n", true );
- while ( ligne != "" )
+ while ( !ligne.empty() )
{
NewMP( ligne );
ligne = fileData.splitTo( "\n", true );
diff --git a/code/ryzom/tools/leveldesign/named_items_2_csv/named_items_2_csv.cpp b/code/ryzom/tools/leveldesign/named_items_2_csv/named_items_2_csv.cpp
index ca89cae2f..6ab9e2a26 100644
--- a/code/ryzom/tools/leveldesign/named_items_2_csv/named_items_2_csv.cpp
+++ b/code/ryzom/tools/leveldesign/named_items_2_csv/named_items_2_csv.cpp
@@ -67,7 +67,7 @@ int verifItemsFile (const char *filename)
string s(buffer);
// null or comment
- if (s == "" || s.find("//") == 0)
+ if (s.empty() || s.find("//") == 0)
continue;
if (s.find("_LocSlot") == string::npos)
@@ -113,7 +113,7 @@ int verifCsvFile (const char *filename)
void processItemLine(const string &s)
{
// null or comment
- if (s == "" || s.find("//") == 0)
+ if (s.empty() || s.find("//") == 0)
return;
// other stuff
@@ -176,7 +176,7 @@ int getFieldsFromFile(const char *filename)
s = s.strtok("\n");
// skip null or comment
- if (s == "" || s.find("//") == 0)
+ if (s.empty() || s.find("//") == 0)
continue;
// add the field
@@ -294,7 +294,7 @@ void getItemBounds(const CVectorSString &lines, uint num, uint &a, uint &b)
while (++i < lines.size() && !ok)
{
- if (lines[i] == "" || lines[i].find("//") != string::npos)
+ if (lines[i].empty() || lines[i].find("//") != string::npos)
continue;
// get item number
@@ -404,7 +404,7 @@ void updateItemField(CVectorSString &lines, uint itemIndex, uint fieldIndex, uin
}
// param not found
- if (!found && val != "" && val != "nul")
+ if (!found && !val.empty() && val != "nul")
{
// add it
if (field.find("_CraftParameters") == string::npos)
@@ -552,7 +552,7 @@ int main(int argc, char *argv[])
// load csv values
importCsv(csvFile.c_str());
- if (itemsFile != "" && CFile::isExists(itemsFile.c_str()))
+ if (!itemsFile.empty() && CFile::isExists(itemsFile.c_str()))
updateItems(itemsFile.c_str());
else
nlerror("Can't find file : %s", itemsFile.c_str());
diff --git a/code/ryzom/tools/leveldesign/world_editor/world_editor/dialog_properties.cpp b/code/ryzom/tools/leveldesign/world_editor/world_editor/dialog_properties.cpp
index 31189622a..e39994fc4 100644
--- a/code/ryzom/tools/leveldesign/world_editor/world_editor/dialog_properties.cpp
+++ b/code/ryzom/tools/leveldesign/world_editor/world_editor/dialog_properties.cpp
@@ -216,7 +216,7 @@ void CDialogProperties::removeWidgets ()
else if (widget.Parameter.Type == CPrimitiveClass::CParameter::StringArray)
{
widget.MultiLineEditBox.DestroyWindow ();
- if (widget.Parameter.Folder != "" || !widget.Parameter.FileExtension.empty())
+ if (!widget.Parameter.Folder.empty() || !widget.Parameter.FileExtension.empty())
{
widget.CheckBox.DestroyWindow ();
}
From 3c19f1a2f4f4033b50042d13359581ca2dc3abc1 Mon Sep 17 00:00:00 2001
From: kervala
Date: Sun, 7 Oct 2012 13:58:59 +0200
Subject: [PATCH 059/125] Changed: Don't use CMAKE_LIBRARY_ARCHITECTURE at all,
because not reliable enough
---
code/CMakeModules/nel.cmake | 35 +++++++++++++++--------------------
1 file changed, 15 insertions(+), 20 deletions(-)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 4875be6d6..67deb84e4 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -436,21 +436,16 @@ MACRO(NL_SETUP_BUILD)
SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_ARM")
ENDIF(TARGET_CPU STREQUAL "x86_64")
- # Override CMAKE_LIBRARY_ARCHITECTURE that is automatically determinated
- IF(LIBRARY_ARCHITECTURE)
- SET(CMAKE_LIBRARY_ARCHITECTURE ${LIBRARY_ARCHITECTURE})
- ENDIF(LIBRARY_ARCHITECTURE)
-
# Fix library paths suffixes for Debian MultiArch
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(CMAKE_LIBRARY_PATH /lib/${CMAKE_LIBRARY_ARCHITECTURE} /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE} ${CMAKE_LIBRARY_PATH})
+ IF(LIBRARY_ARCHITECTURE)
+ SET(CMAKE_LIBRARY_PATH /lib/${LIBRARY_ARCHITECTURE} /usr/lib/${LIBRARY_ARCHITECTURE} ${CMAKE_LIBRARY_PATH})
IF(TARGET_X64)
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib64 /usr/lib64)
ENDIF(TARGET_X64)
IF(TARGET_X86)
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib32 /usr/lib32)
ENDIF(TARGET_X86)
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ ENDIF(LIBRARY_ARCHITECTURE)
IF(MSVC)
IF(MSVC10)
@@ -685,11 +680,11 @@ MACRO(NL_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/lib path.
IF(NOT NL_LIB_PREFIX)
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ IF(LIBRARY_ARCHITECTURE)
+ SET(NL_LIB_PREFIX "lib/${LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ ELSE(LIBRARY_ARCHITECTURE)
SET(NL_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ ENDIF(LIBRARY_ARCHITECTURE)
ENDIF(NOT NL_LIB_PREFIX)
NL_MAKE_ABSOLUTE_PREFIX(NL_LIB_PREFIX NL_LIB_ABSOLUTE_PREFIX)
@@ -698,11 +693,11 @@ MACRO(NL_SETUP_PREFIX_PATHS)
IF(WIN32)
SET(NL_DRIVER_PREFIX "." CACHE PATH "Installation path for drivers.")
ELSE(WIN32)
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(NL_DRIVER_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ IF(LIBRARY_ARCHITECTURE)
+ SET(NL_DRIVER_PREFIX "lib/${LIBRARY_ARCHITECTURE}/nel" CACHE PATH "Installation path for drivers.")
+ ELSE(LIBRARY_ARCHITECTURE)
SET(NL_DRIVER_PREFIX "lib/nel" CACHE PATH "Installation path for drivers.")
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ ENDIF(LIBRARY_ARCHITECTURE)
ENDIF(WIN32)
ENDIF(NOT NL_DRIVER_PREFIX)
NL_MAKE_ABSOLUTE_PREFIX(NL_DRIVER_PREFIX NL_DRIVER_ABSOLUTE_PREFIX)
@@ -752,11 +747,11 @@ MACRO(RYZOM_SETUP_PREFIX_PATHS)
## Allow override of install_prefix/lib path.
IF(NOT RYZOM_LIB_PREFIX)
- IF(CMAKE_LIBRARY_ARCHITECTURE)
- SET(RYZOM_LIB_PREFIX "lib/${CMAKE_LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
- ELSE(CMAKE_LIBRARY_ARCHITECTURE)
+ IF(LIBRARY_ARCHITECTURE)
+ SET(RYZOM_LIB_PREFIX "lib/${LIBRARY_ARCHITECTURE}" CACHE PATH "Installation path for libraries.")
+ ELSE(LIBRARY_ARCHITECTURE)
SET(RYZOM_LIB_PREFIX "lib" CACHE PATH "Installation path for libraries.")
- ENDIF(CMAKE_LIBRARY_ARCHITECTURE)
+ ENDIF(LIBRARY_ARCHITECTURE)
ENDIF(NOT RYZOM_LIB_PREFIX)
NL_MAKE_ABSOLUTE_PREFIX(RYZOM_LIB_PREFIX RYZOM_LIB_ABSOLUTE_PREFIX)
From b421b38defb315e8b057ea3839feb255d2c6ee52 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 8 Oct 2012 19:06:08 +0200
Subject: [PATCH 060/125] Changed: Use of CMAKE_OSX_ARCHITECTURES to compile
universal binaries under Mac OS X
---
code/CMakeModules/PCHSupport.cmake | 35 ++-
code/CMakeModules/nel.cmake | 334 +++++++++++++++++++++--------
2 files changed, 269 insertions(+), 100 deletions(-)
diff --git a/code/CMakeModules/PCHSupport.cmake b/code/CMakeModules/PCHSupport.cmake
index 7cd4c6c7d..0ef2243d6 100644
--- a/code/CMakeModules/PCHSupport.cmake
+++ b/code/CMakeModules/PCHSupport.cmake
@@ -34,18 +34,18 @@ ENDIF(MSVC)
MACRO(_PCH_GET_COMPILE_FLAGS _out_compile_flags)
STRING(TOUPPER "CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}" _flags_var_name)
- SET(${_out_compile_flags} ${${_flags_var_name}} )
+ SET(_FLAGS ${${_flags_var_name}} )
IF(NOT MSVC)
GET_TARGET_PROPERTY(_targetType ${_PCH_current_target} TYPE)
IF(${_targetType} STREQUAL SHARED_LIBRARY OR ${_targetType} STREQUAL MODULE_LIBRARY)
- LIST(APPEND ${_out_compile_flags} "-fPIC")
+ LIST(APPEND _FLAGS "-fPIC")
ENDIF(${_targetType} STREQUAL SHARED_LIBRARY OR ${_targetType} STREQUAL MODULE_LIBRARY)
ENDIF(NOT MSVC)
GET_DIRECTORY_PROPERTY(DIRINC INCLUDE_DIRECTORIES )
FOREACH(item ${DIRINC})
- LIST(APPEND ${_out_compile_flags} " ${_PCH_include_prefix}\"${item}\"")
+ LIST(APPEND _FLAGS " ${_PCH_include_prefix}\"${item}\"")
ENDFOREACH(item)
# Required for CMake 2.6
@@ -57,13 +57,32 @@ MACRO(_PCH_GET_COMPILE_FLAGS _out_compile_flags)
GET_DIRECTORY_PROPERTY(_directory_flags DEFINITIONS)
GET_DIRECTORY_PROPERTY(_directory_definitions DIRECTORY ${CMAKE_SOURCE_DIR} DEFINITIONS)
- LIST(APPEND ${_out_compile_flags} ${GLOBAL_DEFINITIONS})
- LIST(APPEND ${_out_compile_flags} ${_directory_flags})
- LIST(APPEND ${_out_compile_flags} ${_directory_definitions})
- LIST(APPEND ${_out_compile_flags} ${CMAKE_CXX_FLAGS})
+ LIST(APPEND _FLAGS ${GLOBAL_DEFINITIONS})
+ LIST(APPEND _FLAGS ${_directory_flags})
+ LIST(APPEND _FLAGS ${_directory_definitions})
+ LIST(APPEND _FLAGS ${CMAKE_CXX_FLAGS})
# Format definitions
- SEPARATE_ARGUMENTS(${_out_compile_flags})
+ SEPARATE_ARGUMENTS(_FLAGS)
+
+ IF(CLANG)
+ SET(_IGNORE_NEXT OFF)
+ FOREACH(item ${_FLAGS})
+ IF(_IGNORE_NEXT)
+ SET(_IGNORE_NEXT OFF)
+ ELSE(_IGNORE_NEXT)
+ IF(item MATCHES "^-Xarch")
+ SET(_IGNORE_NEXT ON)
+ ELSEIF(item MATCHES "^-arch")
+ SET(_IGNORE_NEXT ON)
+ ELSE(item MATCHES "^-Xarch")
+ LIST(APPEND ${_out_compile_flags} ${item})
+ ENDIF(item MATCHES "^-Xarch")
+ ENDIF(_IGNORE_NEXT)
+ ENDFOREACH(item)
+ ELSE(CLANG)
+ SET(${_out_compile_flags} ${_FLAGS})
+ ENDIF(CLANG)
ENDMACRO(_PCH_GET_COMPILE_FLAGS)
MACRO(_PCH_GET_PDB_FILENAME out_filename _target)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index 67deb84e4..b8f74e4de 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -326,6 +326,11 @@ MACRO(NL_SETUP_SNOWBALLS_DEFAULT_OPTIONS)
OPTION(WITH_SNOWBALLS_SERVER "Build Snowballs Services" ON )
ENDMACRO(NL_SETUP_SNOWBALLS_DEFAULT_OPTIONS)
+MACRO(ADD_PLATFORM_FLAGS _FLAGS)
+ SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} ${_FLAGS}")
+ SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} ${_FLAGS}")
+ENDMACRO(ADD_PLATFORM_FLAGS)
+
MACRO(NL_SETUP_BUILD)
#-----------------------------------------------------------------------------
@@ -422,19 +427,27 @@ MACRO(NL_SETUP_BUILD)
STRING(STRIP ${PLATFORM_CXXFLAGS} PLATFORM_CXXFLAGS)
STRING(STRIP ${PLATFORM_LINKFLAGS} PLATFORM_LINKFLAGS)
- IF(TARGET_CPU STREQUAL "x86_64")
- SET(TARGET_X64 1)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_X86_64")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_X86_64")
- ELSEIF(TARGET_CPU STREQUAL "x86")
- SET(TARGET_X86 1)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_X86")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_X86")
- ELSEIF(TARGET_CPU STREQUAL "arm")
- SET(TARGET_ARM 1)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DHAVE_ARM")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -DHAVE_ARM")
- ENDIF(TARGET_CPU STREQUAL "x86_64")
+ IF(NOT CMAKE_OSX_ARCHITECTURES)
+ IF(TARGET_CPU STREQUAL "x86_64")
+ SET(TARGET_X64 1)
+ ELSEIF(TARGET_CPU STREQUAL "x86")
+ SET(TARGET_X86 1)
+ ELSEIF(TARGET_CPU STREQUAL "armv7s")
+ SET(TARGET_ARM 1)
+ SET(TARGET_ARMV7S 1)
+ ELSEIF(TARGET_CPU STREQUAL "armv7")
+ SET(TARGET_ARM 1)
+ SET(TARGET_ARMV7 1)
+ ELSEIF(TARGET_CPU STREQUAL "armv6")
+ SET(TARGET_ARM 1)
+ SET(TARGET_ARMV6 1)
+ ELSEIF(TARGET_CPU STREQUAL "armv5")
+ SET(TARGET_ARM 1)
+ SET(TARGET_ARMV5 1)
+ ELSEIF(TARGET_CPU STREQUAL "arm")
+ SET(TARGET_ARM 1)
+ ENDIF(TARGET_CPU STREQUAL "x86_64")
+ ENDIF(NOT CMAKE_OSX_ARCHITECTURES)
# Fix library paths suffixes for Debian MultiArch
IF(LIBRARY_ARCHITECTURE)
@@ -447,35 +460,65 @@ MACRO(NL_SETUP_BUILD)
ENDIF(TARGET_X86)
ENDIF(LIBRARY_ARCHITECTURE)
+ IF(APPLE AND NOT IOS)
+ SET(CMAKE_INCLUDE_PATH /opt/local/include ${CMAKE_INCLUDE_PATH})
+ SET(CMAKE_LIBRARY_PATH /opt/local/lib ${CMAKE_LIBRARY_PATH})
+ ENDIF(APPLE AND NOT IOS)
+
+ IF(TARGET_ARM)
+ IF(TARGET_ARMV7)
+ ADD_PLATFORM_FLAGS("-DHAVE_ARMV7")
+ ENDIF(TARGET_ARMV7)
+
+ IF(TARGET_ARMV6)
+ ADD_PLATFORM_FLAGS("-HAVE_ARMV6")
+ ENDIF(TARGET_ARMV6)
+
+ ADD_PLATFORM_FLAGS("-DHAVE_ARM")
+ ENDIF(TARGET_ARM)
+
+ IF(TARGET_X86)
+ ADD_PLATFORM_FLAGS("-DHAVE_X86")
+ ENDIF(TARGET_X86)
+
+ IF(TARGET_X64)
+ ADD_PLATFORM_FLAGS("-DHAVE_X64 -DHAVE_X86_64")
+ ENDIF(TARGET_X64)
+
+ IF(WITH_LOGGING)
+ ADD_PLATFORM_FLAGS("-DENABLE_LOGS")
+ ENDIF(WITH_LOGGING)
+
IF(MSVC)
IF(MSVC10)
+ ADD_PLATFORM_FLAGS("/Gy- /MP")
# /Ox is working with VC++ 2010, but custom optimizations don't exist
- SET(SPEED_OPTIMIZATIONS "/Ox /GF /GS-")
+ SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
# without inlining it's unusable, use custom optimizations again
- SET(MIN_OPTIMIZATIONS "/Od /Ob1")
+ SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}")
ELSEIF(MSVC90)
+ ADD_PLATFORM_FLAGS("/Gy- /MP")
# don't use a /O[012x] flag if you want custom optimizations
- SET(SPEED_OPTIMIZATIONS "/Ob2 /Oi /Ot /Oy /GT /GF /GS-")
+ SET(RELEASE_CFLAGS "/Ob2 /Oi /Ot /Oy /GT /GF /GS- ${RELEASE_CFLAGS}")
# without inlining it's unusable, use custom optimizations again
- SET(MIN_OPTIMIZATIONS "/Ob1")
+ SET(DEBUG_CFLAGS "/Ob1 /GF- ${DEBUG_CFLAGS}")
ELSEIF(MSVC80)
+ ADD_PLATFORM_FLAGS("/Gy- /Wp64")
# don't use a /O[012x] flag if you want custom optimizations
- SET(SPEED_OPTIMIZATIONS "/Ox /GF /GS-")
+ SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
# without inlining it's unusable, use custom optimizations again
- SET(MIN_OPTIMIZATIONS "/Od /Ob1")
+ SET(DEBUG_CFLAGS "/Od /Ob1 ${DEBUG_CFLAGS}")
ELSE(MSVC10)
MESSAGE(FATAL_ERROR "Can't determine compiler version ${MSVC_VERSION}")
ENDIF(MSVC10)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /W3 /Zm1000 /MP /Gy-")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /W3 /Zm1000 /MP /Gy-")
+ ADD_PLATFORM_FLAGS("/D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /Zm1000 /wd4250")
IF(TARGET_X64)
# Fix a bug with Intellisense
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} /D_WIN64")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} /D_WIN64")
+ ADD_PLATFORM_FLAGS("/D_WIN64")
# Fix a compilation error for some big C++ files
- SET(MIN_OPTIMIZATIONS "${MIN_OPTIMIZATIONS} /bigobj")
+ SET(RELEASE_CFLAGS "${RELEASE_CFLAGS} /bigobj")
ELSE(TARGET_X64)
# Allows 32 bits applications to use 3 GB of RAM
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /LARGEADDRESSAWARE")
@@ -491,97 +534,201 @@ MACRO(NL_SETUP_BUILD)
SET(NL_RELEASE_LINKFLAGS "/RELEASE ${NL_RELEASE_LINKFLAGS}")
ENDIF(WITH_SYMBOLS)
- SET(NL_DEBUG_CFLAGS "/Zi /MDd /RTC1 /D_DEBUG ${MIN_OPTIMIZATIONS} ${NL_DEBUG_CFLAGS}")
- SET(NL_RELEASE_CFLAGS "/MD /DNDEBUG ${SPEED_OPTIMIZATIONS} ${NL_RELEASE_CFLAGS}")
+ SET(NL_DEBUG_CFLAGS "/Zi /MDd /RTC1 /D_DEBUG ${DEBUG_CFLAGS} ${NL_DEBUG_CFLAGS}")
+ SET(NL_RELEASE_CFLAGS "/MD /DNDEBUG ${RELEASE_CFLAGS} ${NL_RELEASE_CFLAGS}")
SET(NL_DEBUG_LINKFLAGS "/DEBUG /OPT:NOREF /OPT:NOICF /NODEFAULTLIB:msvcrt /INCREMENTAL:YES ${NL_DEBUG_LINKFLAGS}")
SET(NL_RELEASE_LINKFLAGS "/OPT:REF /OPT:ICF /INCREMENTAL:NO ${NL_RELEASE_LINKFLAGS}")
+
+ IF(WITH_WARNINGS)
+ SET(DEBUG_CFLAGS "/W4 ${DEBUG_CFLAGS}")
+ ELSE(WITH_WARNINGS)
+ SET(DEBUG_CFLAGS "/W3 ${DEBUG_CFLAGS}")
+ ENDIF(WITH_WARNINGS)
ELSE(MSVC)
IF(WIN32)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -DWIN32 -D_WIN32")
+ ADD_PLATFORM_FLAGS("-DWIN32 -D_WIN32")
+
+ IF(CLANG)
+ ADD_PLATFORM_FLAGS("-nobuiltininc")
+ ENDIF(CLANG)
ENDIF(WIN32)
- IF(APPLE)
- IF(TARGET_CPU STREQUAL "x86")
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch i386")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch i386")
- ENDIF(TARGET_CPU STREQUAL "x86")
+ IF(TARGET_ARM)
+ ADD_PLATFORM_FLAGS("-mthumb")
+ ENDIF(TARGET_ARM)
- IF(TARGET_CPU STREQUAL "x86_64")
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch x86_64")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch x86_64")
- ENDIF(TARGET_CPU STREQUAL "x86_64")
+ IF(APPLE)
+ IF(IOS)
+ SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.7" CACHE PATH "" FORCE)
+ ELSE(IOS)
+ IF(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
+ SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.6" CACHE PATH "" FORCE)
+ ENDIF(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
+ ENDIF(IOS)
+
+ IF(XCODE)
+ IF(IOS)
+ SET(CMAKE_OSX_SYSROOT "iphoneos" CACHE PATH "" FORCE)
+ ELSE(IOS)
+# SET(CMAKE_OSX_SYSROOT "macosx" CACHE PATH "" FORCE)
+ ENDIF(IOS)
+ ELSE(XCODE)
+ IF(CMAKE_OSX_ARCHITECTURES)
+ SET(TARGETS_COUNT 0)
+ SET(_ARCHS)
+ FOREACH(_ARCH ${CMAKE_OSX_ARCHITECTURES})
+ IF(_ARCH STREQUAL "i386")
+ SET(_ARCHS "${_ARCHS} i386")
+ SET(TARGET_X86 1)
+ MATH(EXPR TARGETS_COUNT "${TARGETS_COUNT}+1")
+ ELSEIF(_ARCH STREQUAL "x86_64")
+ SET(_ARCHS "${_ARCHS} x86_64")
+ SET(TARGET_X64 1)
+ MATH(EXPR TARGETS_COUNT "${TARGETS_COUNT}+1")
+ ELSEIF(_ARCH STREQUAL "armv7")
+ SET(_ARCHS "${_ARCHS} armv7")
+ SET(TARGET_ARMV7 1)
+ SET(TARGET_ARM 1)
+ MATH(EXPR TARGETS_COUNT "${TARGETS_COUNT}+1")
+ ELSEIF(_ARCH STREQUAL "armv6")
+ SET(_ARCHS "${_ARCHS} armv6")
+ SET(TARGET_ARMV6 1)
+ SET(TARGET_ARM 1)
+ MATH(EXPR TARGETS_COUNT "${TARGETS_COUNT}+1")
+ ELSE(_ARCH STREQUAL "i386")
+ SET(_ARCHS "${_ARCHS} unknwon(${_ARCH})")
+ ENDIF(_ARCH STREQUAL "i386")
+ ENDFOREACH(_ARCH)
+ MESSAGE(STATUS "Compiling under Mac OS X for ${TARGETS_COUNT} architectures: ${_ARCHS}")
+ ELSE(CMAKE_OSX_ARCHITECTURES)
+ SET(TARGETS_COUNT 1)
+ ENDIF(CMAKE_OSX_ARCHITECTURES)
+
+ IF(TARGETS_COUNT EQUAL 1)
+ IF(TARGET_ARM)
+ IF(TARGET_ARMV7S)
+ ADD_PLATFORM_FLAGS("-arch armv7s")
+ ENDIF(TARGET_ARMV7S)
+
+ IF(TARGET_ARMV7)
+ ADD_PLATFORM_FLAGS("-arch armv7")
+ ENDIF(TARGET_ARMV7)
+
+ IF(TARGET_ARMV6)
+ ADD_PLATFORM_FLAGS("-arch armv6")
+ ENDIF(TARGET_ARMV6)
+
+ IF(TARGET_ARMV5)
+ ADD_PLATFORM_FLAGS("-arch armv5")
+ ENDIF(TARGET_ARMV5)
+ ENDIF(TARGET_ARM)
+
+ IF(TARGET_X86)
+ ADD_PLATFORM_FLAGS("-arch i386")
+ ENDIF(TARGET_X86)
+
+ IF(TARGET_X64)
+ ADD_PLATFORM_FLAGS("-arch x86_64")
+ ENDIF(TARGET_X64)
+ ELSE(TARGETS_COUNT EQUAL 1)
+ IF(TARGET_ARMV6)
+ ADD_PLATFORM_FLAGS("-Xarch_armv6 -mthumb -Xarch_armv6 -DHAVE_ARM -Xarch_armv6 -DHAVE_ARMV6")
+ ENDIF(TARGET_ARMV6)
+
+ IF(TARGET_ARMV7)
+ ADD_PLATFORM_FLAGS("-Xarch_armv7 -mthumb -Xarch_armv7 -DHAVE_ARM -Xarch_armv7 -DHAVE_ARMV7")
+ ENDIF(TARGET_ARMV7)
+
+ IF(TARGET_X86)
+ ADD_PLATFORM_FLAGS("-arch i386 -Xarch_i386 -DHAVE_X86")
+ ENDIF(TARGET_X86)
+
+ IF(TARGET_X64)
+ ADD_PLATFORM_FLAGS("-arch x86_64 -Xarch_x86_64 -DHAVE_X64 -Xarch_x86_64 -DHAVE_X86_64")
+ ENDIF(TARGET_X64)
+ ENDIF(TARGETS_COUNT EQUAL 1)
+
+ IF(IOS)
+ IF(IOS_VERSION)
+ PARSE_VERSION_STRING(${IOS_VERSION} IOS_VERSION_MAJOR IOS_VERSION_MINOR IOS_VERSION_PATCH)
+ CONVERT_VERSION_NUMBER(${IOS_VERSION_MAJOR} ${IOS_VERSION_MINOR} ${IOS_VERSION_PATCH} IOS_VERSION_NUMBER)
+
+ ADD_PLATFORM_FLAGS("-D__IPHONE_OS_VERSION_MIN_REQUIRED=${IOS_VERSION_NUMBER}")
+ ENDIF(IOS_VERSION)
+
+ IF(CMAKE_IOS_SYSROOT)
+ ADD_PLATFORM_FLAGS("-isysroot${CMAKE_IOS_SYSROOT}")
+ ADD_PLATFORM_FLAGS("-miphoneos-version-min=${IOS_VERSION}")
+ SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-iphoneos_version_min,${IOS_VERSION}")
+ ENDIF(CMAKE_IOS_SYSROOT)
+
+ IF(CMAKE_IOS_SIMULATOR_SYSROOT AND TARGET_X86)
+ IF(TARGETS_COUNT EQUAL 1)
+ ADD_PLATFORM_FLAGS("-arch i386")
+ ELSE(TARGETS_COUNT EQUAL 1)
+ SET(XARCH "-Xarch_i386 ")
+ ENDIF(TARGETS_COUNT EQUAL 1)
+
+ # Always force -mmacosx-version-min to override environement variable
+ ADD_PLATFORM_FLAGS("${XARCH}-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+ SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} ${XARCH}-Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}")
+ ENDIF(CMAKE_IOS_SIMULATOR_SYSROOT AND TARGET_X86)
+ ELSE(IOS)
+ FOREACH(_SDK ${_CMAKE_OSX_SDKS})
+ IF(${_SDK} MATCHES "MacOSX${CMAKE_OSX_DEPLOYMENT_TARGET}\\.sdk")
+ SET(CMAKE_OSX_SYSROOT ${_SDK} CACHE PATH "" FORCE)
+ ENDIF(${_SDK} MATCHES "MacOSX${CMAKE_OSX_DEPLOYMENT_TARGET}\\.sdk")
+ ENDFOREACH(_SDK)
+
+ IF(CMAKE_OSX_SYSROOT)
+ ADD_PLATFORM_FLAGS("-isysroot ${CMAKE_OSX_SYSROOT}")
+ ELSE(CMAKE_OSX_SYSROOT)
+ MESSAGE(FATAL_ERROR "CMAKE_OSX_SYSROOT can't be determinated")
+ ENDIF(CMAKE_OSX_SYSROOT)
+
+ # Always force -mmacosx-version-min to override environement variable
+ ADD_PLATFORM_FLAGS("-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
+ SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}")
+ ENDIF(IOS)
+
+ SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-headerpad_max_install_names")
+
+ IF(HAVE_FLAG_SEARCH_PATHS_FIRST)
+ SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-search_paths_first")
+ ENDIF(HAVE_FLAG_SEARCH_PATHS_FIRST)
+ ENDIF(XCODE)
ELSE(APPLE)
IF(HOST_CPU STREQUAL "x86_64" AND TARGET_CPU STREQUAL "x86")
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -m32 -march=i686")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -m32 -march=i686")
+ ADD_PLATFORM_FLAGS("-m32 -march=i686")
ENDIF(HOST_CPU STREQUAL "x86_64" AND TARGET_CPU STREQUAL "x86")
IF(HOST_CPU STREQUAL "x86" AND TARGET_CPU STREQUAL "x86_64")
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -m64")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -m64")
+ ADD_PLATFORM_FLAGS("-m64")
ENDIF(HOST_CPU STREQUAL "x86" AND TARGET_CPU STREQUAL "x86_64")
ENDIF(APPLE)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -D_REENTRANT -pipe -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -D_REENTRANT -pipe -Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused -fno-strict-aliasing")
-
- IF(NOT ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -ansi")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -ansi")
- ENDIF(NOT ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
+ ADD_PLATFORM_FLAGS("-D_REENTRANT -pipe -fno-strict-aliasing")
IF(WITH_COVERAGE)
- SET(PLATFORM_CFLAGS "-fprofile-arcs -ftest-coverage ${PLATFORM_CFLAGS}")
- SET(PLATFORM_CXXFLAGS "-fprofile-arcs -ftest-coverage ${PLATFORM_CXXFLAGS}")
+ ADD_PLATFORM_FLAGS("-fprofile-arcs -ftest-coverage")
ENDIF(WITH_COVERAGE)
+ IF(WITH_WARNINGS)
+ ADD_PLATFORM_FLAGS("-Wall -W -Wpointer-arith -Wsign-compare -Wno-deprecated-declarations -Wno-multichar -Wno-unused")
+ IF(CLANG)
+ ADD_PLATFORM_FLAGS("-std=gnu99")
+ ELSE(CLANG)
+ ADD_PLATFORM_FLAGS("-ansi")
+ ENDIF(CLANG)
+ ENDIF(WITH_WARNINGS)
+
IF(APPLE)
- SET(PLATFORM_CFLAGS "-gdwarf-2 ${PLATFORM_CFLAGS}")
- SET(PLATFORM_CXXFLAGS "-gdwarf-2 ${PLATFORM_CXXFLAGS}")
+ ADD_PLATFORM_FLAGS("-gdwarf-2")
ENDIF(APPLE)
- IF(APPLE AND XCODE)
-# SET(CMAKE_OSX_SYSROOT "macosx" CACHE PATH "" FORCE)
- ELSEIF(APPLE AND NOT XCODE)
- IF(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
- SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.6")
- ENDIF(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
-
- FOREACH(_SDK ${_CMAKE_OSX_SDKS})
- IF(${_SDK} MATCHES "MacOSX${CMAKE_OSX_DEPLOYMENT_TARGET}\\.sdk")
- SET(CMAKE_OSX_SYSROOT ${_SDK} CACHE PATH "" FORCE)
- ENDIF(${_SDK} MATCHES "MacOSX${CMAKE_OSX_DEPLOYMENT_TARGET}\\.sdk")
- ENDFOREACH(_SDK)
-
- IF(CMAKE_OSX_SYSROOT)
- SET(PLATFORM_CFLAGS "-isysroot ${CMAKE_OSX_SYSROOT} ${PLATFORM_CFLAGS}")
- SET(PLATFORM_CXXFLAGS "-isysroot ${CMAKE_OSX_SYSROOT} ${PLATFORM_CXXFLAGS}")
- ELSE(CMAKE_OSX_SYSROOT)
- MESSAGE(FATAL_ERROR "CMAKE_OSX_SYSROOT can't be determinated")
- ENDIF(CMAKE_OSX_SYSROOT)
-
- IF(CMAKE_OSX_ARCHITECTURES)
- FOREACH(_ARCH ${CMAKE_OSX_ARCHITECTURES})
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -arch ${_ARCH}")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -arch ${_ARCH}")
- ENDFOREACH(_ARCH)
- ENDIF(CMAKE_OSX_ARCHITECTURES)
- IF(CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG)
- SET(PLATFORM_CFLAGS "${PLATFORM_CFLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
- SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
- ENDIF(CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG)
-
- SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-headerpad_max_install_names")
-
- IF(HAVE_FLAG_SEARCH_PATHS_FIRST)
- SET(PLATFORM_LINKFLAGS "-Wl,-search_paths_first ${PLATFORM_LINKFLAGS}")
- ENDIF(HAVE_FLAG_SEARCH_PATHS_FIRST)
- ENDIF(APPLE AND XCODE)
-
# Fix "relocation R_X86_64_32 against.." error on x64 platforms
IF(TARGET_X64 AND WITH_STATIC AND NOT WITH_STATIC_DRIVERS)
- SET(PLATFORM_CFLAGS "-fPIC ${PLATFORM_CFLAGS}")
- SET(PLATFORM_CXXFLAGS "-fPIC ${PLATFORM_CXXFLAGS}")
+ ADD_PLATFORM_FLAGS("-fPIC")
ENDIF(TARGET_X64 AND WITH_STATIC AND NOT WITH_STATIC_DRIVERS)
SET(PLATFORM_CXXFLAGS "${PLATFORM_CXXFLAGS} -ftemplate-depth-48")
@@ -788,7 +935,10 @@ MACRO(SETUP_EXTERNAL)
IF(VC_ROOT_DIR MATCHES "registry")
GET_FILENAME_COMPONENT(VC_ROOT_DIR "[HKEY_CURRENT_USER\\Software\\Microsoft\\VCExpress\\10.0_Config;InstallDir]" ABSOLUTE)
IF(VC_ROOT_DIR MATCHES "registry")
- FILE(TO_CMAKE_PATH $ENV{VS100COMNTOOLS} VC_ROOT_DIR)
+ SET(VS100COMNTOOLS $ENV{VS100COMNTOOLS})
+ IF(VS100COMNTOOLS)
+ FILE(TO_CMAKE_PATH ${VS100COMNTOOLS} VC_ROOT_DIR)
+ ENDIF(VS100COMNTOOLS)
IF(NOT VC_ROOT_DIR)
MESSAGE(FATAL_ERROR "Unable to find VC++ 2010 directory!")
ENDIF(NOT VC_ROOT_DIR)
From bced63993bcca56154fbad8081dfec3450e3cd3e Mon Sep 17 00:00:00 2001
From: kervala
Date: Wed, 17 Oct 2012 11:05:51 +0200
Subject: [PATCH 061/125] Changed: #573 Add anti-aliasing to the OpenGL Driver
---
.../3d/driver/opengl/driver_opengl_states.cpp | 21 +++++++++++++++++++
.../3d/driver/opengl/driver_opengl_states.h | 5 +++++
2 files changed, 26 insertions(+)
diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_states.cpp b/code/nel/src/3d/driver/opengl/driver_opengl_states.cpp
index fa4e626a8..1d517d0fc 100644
--- a/code/nel/src/3d/driver/opengl/driver_opengl_states.cpp
+++ b/code/nel/src/3d/driver/opengl/driver_opengl_states.cpp
@@ -94,6 +94,7 @@ void CDriverGLStates::forceDefaults(uint nbStages)
_CurLighting= false;
_CurZWrite= true;
_CurStencilTest=false;
+ _CurMultisample= false;
// setup GLStates.
glDisable(GL_FOG);
@@ -102,6 +103,7 @@ void CDriverGLStates::forceDefaults(uint nbStages)
glDisable(GL_ALPHA_TEST);
glDisable(GL_LIGHTING);
glDepthMask(GL_TRUE);
+ glDisable(GL_MULTISAMPLE_ARB);
// Func.
_CurBlendSrc= GL_SRC_ALPHA;
@@ -379,6 +381,25 @@ void CDriverGLStates::enableStencilTest(bool enable)
}
}
+// ***************************************************************************
+void CDriverGLStates::enableMultisample(bool enable)
+{
+ H_AUTO_OGL(CDriverGLStates_enableMultisample);
+
+ // If different from current setup, update.
+#ifndef NL3D_GLSTATE_DISABLE_CACHE
+ if( enable != _CurMultisample )
+#endif
+ {
+ // new state.
+ _CurMultisample= enable;
+ // Setup GLState.
+ if(_CurMultisample)
+ glEnable(GL_MULTISAMPLE_ARB);
+ else
+ glDisable(GL_MULTISAMPLE_ARB);
+ }
+}
// ***************************************************************************
void CDriverGLStates::blendFunc(GLenum src, GLenum dst)
diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_states.h b/code/nel/src/3d/driver/opengl/driver_opengl_states.h
index fda404e03..be5c1918f 100644
--- a/code/nel/src/3d/driver/opengl/driver_opengl_states.h
+++ b/code/nel/src/3d/driver/opengl/driver_opengl_states.h
@@ -44,6 +44,7 @@ namespace NLDRIVERGL {
- GL_TEXTURE_GEN_S, GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R
- GL_COLOR_MATERIAL
- GL_FOG
+ - GL_MULTISAMPLE_ARB
- glActiveTextureARB()
- glClientActiveTextureARB()
- glEnableClientState() glDisableClientState() with:
@@ -99,6 +100,9 @@ public:
/// enable/disable stencil test
void enableStencilTest(bool enable);
bool isStencilTestEnabled() const { return _CurStencilTest; }
+ /// enable/disable multisample
+ void enableMultisample(bool enable);
+ bool isMultisampleEnabled() const { return _CurMultisample; }
// @}
/// glBlendFunc.
@@ -197,6 +201,7 @@ private:
bool _CurLighting;
bool _CurZWrite;
bool _CurStencilTest;
+ bool _CurMultisample;
GLenum _CurBlendSrc;
GLenum _CurBlendDst;
From 2e6361ebfe00be4bf72934b8bff379665db42840 Mon Sep 17 00:00:00 2001
From: kervala
Date: Mon, 22 Oct 2012 14:56:25 +0200
Subject: [PATCH 062/125] Fixed: revision.h error when hg executable not found
---
code/CMakeModules/GetRevision.cmake | 31 ++++++++++++---------
code/CMakeModules/nel.cmake | 43 +++++++++++++++++++++++------
2 files changed, 53 insertions(+), 21 deletions(-)
diff --git a/code/CMakeModules/GetRevision.cmake b/code/CMakeModules/GetRevision.cmake
index 52f443d5f..18e997af2 100644
--- a/code/CMakeModules/GetRevision.cmake
+++ b/code/CMakeModules/GetRevision.cmake
@@ -3,20 +3,24 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6.3)
# ROOT_DIR should be set to root of the repository (where to find the .svn or .hg directory)
# SOURCE_DIR should be set to root of your code (where to find CMakeLists.txt)
-# Replace spaces by semi-columns
-IF(CMAKE_MODULE_PATH)
- STRING(REPLACE " " ";" CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
-ENDIF(CMAKE_MODULE_PATH)
+IF(SOURCE_DIR)
+ # Replace spaces by semi-columns
+ IF(CMAKE_MODULE_PATH)
+ STRING(REPLACE " " ";" CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
+ ENDIF(CMAKE_MODULE_PATH)
-SET(CMAKE_MODULE_PATH ${SOURCE_DIR}/CMakeModules ${CMAKE_MODULE_PATH})
+ SET(CMAKE_MODULE_PATH ${SOURCE_DIR}/CMakeModules ${CMAKE_MODULE_PATH})
-IF(NOT ROOT_DIR AND SOURCE_DIR)
- SET(ROOT_DIR ${SOURCE_DIR})
-ENDIF(NOT ROOT_DIR AND SOURCE_DIR)
+ IF(NOT ROOT_DIR AND SOURCE_DIR)
+ SET(ROOT_DIR ${SOURCE_DIR})
+ ENDIF(NOT ROOT_DIR AND SOURCE_DIR)
-IF(NOT SOURCE_DIR AND ROOT_DIR)
- SET(SOURCE_DIR ${ROOT_DIR})
-ENDIF(NOT SOURCE_DIR AND ROOT_DIR)
+ IF(NOT SOURCE_DIR AND ROOT_DIR)
+ SET(SOURCE_DIR ${ROOT_DIR})
+ ENDIF(NOT SOURCE_DIR AND ROOT_DIR)
+ELSE(SOURCE_DIR)
+ SET(ROOT_DIR ${CMAKE_SOURCE_DIR})
+ENDIF(SOURCE_DIR)
MACRO(NOW RESULT)
IF (WIN32)
@@ -53,10 +57,11 @@ IF(EXISTS "${ROOT_DIR}/.hg/")
ENDIF(MERCURIAL_FOUND)
ENDIF(EXISTS "${ROOT_DIR}/.hg/")
-IF(DEFINED REVISION)
+IF(SOURCE_DIR AND DEFINED REVISION)
IF(EXISTS ${SOURCE_DIR}/revision.h.in)
+ MESSAGE(STATUS "Revision: ${REVISION}")
NOW(BUILD_DATE)
CONFIGURE_FILE(${SOURCE_DIR}/revision.h.in revision.h.txt)
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy revision.h.txt revision.h) # copy_if_different
ENDIF(EXISTS ${SOURCE_DIR}/revision.h.in)
-ENDIF(DEFINED REVISION)
+ENDIF(SOURCE_DIR AND DEFINED REVISION)
diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake
index b8f74e4de..e1b204690 100644
--- a/code/CMakeModules/nel.cmake
+++ b/code/CMakeModules/nel.cmake
@@ -22,22 +22,39 @@ ENDMACRO(NL_GEN_PC)
###
MACRO(NL_GEN_REVISION_H)
IF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h.in)
- INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
- ADD_DEFINITIONS(-DHAVE_REVISION_H)
- SET(HAVE_REVISION_H ON)
+ SET(TOOL_FOUND OFF)
+
+ IF(EXISTS "${CMAKE_SOURCE_DIR}/../.svn/")
+ FIND_PACKAGE(Subversion)
+
+ IF(SUBVERSION_FOUND)
+ SET(TOOL_FOUND ON)
+ ENDIF(SUBVERSION_FOUND)
+ ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/../.svn/")
+
+ IF(EXISTS "${CMAKE_SOURCE_DIR}/../.hg/")
+ FIND_PACKAGE(Mercurial)
+
+ IF(MERCURIAL_FOUND)
+ SET(TOOL_FOUND ON)
+ ENDIF(MERCURIAL_FOUND)
+ ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/../.hg/")
# if already generated
IF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
# copy it
MESSAGE(STATUS "Copying provided revision.h...")
FILE(COPY ${CMAKE_SOURCE_DIR}/revision.h DESTINATION ${CMAKE_BINARY_DIR})
- ELSE(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
+ SET(HAVE_REVISION_H ON)
+ ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
+
+ IF(TOOL_FOUND)
# a custom target that is always built
- ADD_CUSTOM_TARGET(revision ALL
- DEPENDS ${CMAKE_BINARY_DIR}/revision.h)
+ ADD_CUSTOM_TARGET(revision ALL)
# creates revision.h using cmake script
- ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/revision.h
+ ADD_CUSTOM_COMMAND(TARGET revision
+ PRE_BUILD
COMMAND ${CMAKE_COMMAND}
-DSOURCE_DIR=${CMAKE_SOURCE_DIR}
-DROOT_DIR=${CMAKE_SOURCE_DIR}/..
@@ -47,7 +64,13 @@ MACRO(NL_GEN_REVISION_H)
SET_SOURCE_FILES_PROPERTIES(${CMAKE_BINARY_DIR}/revision.h
PROPERTIES GENERATED TRUE
HEADER_FILE_ONLY TRUE)
- ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
+ SET(HAVE_REVISION_H ON)
+ ENDIF(TOOL_FOUND)
+
+ IF(HAVE_REVISION_H)
+ INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
+ ADD_DEFINITIONS(-DHAVE_REVISION_H)
+ ENDIF(HAVE_REVISION_H)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h.in)
ENDMACRO(NL_GEN_REVISION_H)
@@ -922,6 +945,10 @@ MACRO(SETUP_EXTERNAL)
IF(WIN32)
FIND_PACKAGE(External REQUIRED)
+ IF(NOT VC_DIR)
+ SET(VC_DIR $ENV{VC_DIR})
+ ENDIF(NOT VC_DIR)
+
IF(MSVC10)
IF(NOT MSVC10_REDIST_DIR)
# If you have VC++ 2010 Express, put x64/Microsoft.VC100.CRT/*.dll in ${EXTERNAL_PATH}/redist
From 41c00b9b48ea37817f6f368bb320a0c376799773 Mon Sep 17 00:00:00 2001
From: ulukyn
Date: Tue, 23 Oct 2012 17:44:36 +0200
Subject: [PATCH 063/125] Changed: Update from Ryzom Team
---
code/web/api/client/config.php.default | 2 +-
code/web/api/client/time.php | 46 +
code/web/api/common/actionPage.php | 161 +
code/web/api/common/auth.php | 125 +-
code/web/api/common/bbCode.php | 988 ++
code/web/api/common/config.php.default | 5 +-
code/web/api/common/db_defs.php | 24 +
code/web/api/common/db_lib.php | 266 +-
code/web/api/common/dfm.php | 151 +
code/web/api/common/logger.php | 29 +-
code/web/api/common/render.php | 215 +-
code/web/api/common/ryform.php | 678 ++
code/web/api/common/ryformBases.php | 177 +
code/web/api/common/time.php | 130 +
code/web/api/common/user.php | 58 +
code/web/api/common/utils.php | 317 +-
code/web/api/common/xml_utils.php | 23 +
code/web/api/data/css/ryzom_ui.css | 60 +-
code/web/api/data/icons/add_app.png | Bin 0 -> 2532 bytes
code/web/api/data/icons/edit.png | Bin 0 -> 1203 bytes
code/web/api/data/icons/edit_16.png | Bin 0 -> 732 bytes
code/web/api/data/icons/no_action.png | Bin 0 -> 566 bytes
code/web/api/data/icons/spe_com.png | Bin 0 -> 1840 bytes
code/web/api/data/img/bordure.png | Bin 0 -> 3920 bytes
code/web/api/data/img/lang/de.png | Bin 229 -> 736 bytes
code/web/api/data/img/lang/en.png | Bin 396 -> 725 bytes
code/web/api/data/img/lang/es.png | Bin 0 -> 649 bytes
code/web/api/data/img/lang/fr.png | Bin 2889 -> 675 bytes
code/web/api/data/img/lang/ru.png | Bin 2886 -> 646 bytes
code/web/api/data/js/combobox.js | 17 +
code/web/api/data/js/jquery-1.7.1.js | 9266 +++++++++++++++++
code/web/api/data/ryzom/guild_png/.htaccess | 1 +
.../ryzom/guild_png/guild_back_b_00_1.png | Bin 0 -> 3427 bytes
.../ryzom/guild_png/guild_back_b_00_2.png | Bin 0 -> 3354 bytes
.../ryzom/guild_png/guild_back_b_01_1.png | Bin 0 -> 3432 bytes
.../ryzom/guild_png/guild_back_b_01_2.png | Bin 0 -> 3346 bytes
.../ryzom/guild_png/guild_back_b_02_1.png | Bin 0 -> 3426 bytes
.../ryzom/guild_png/guild_back_b_02_2.png | Bin 0 -> 3325 bytes
.../ryzom/guild_png/guild_back_b_03_1.png | Bin 0 -> 3295 bytes
.../ryzom/guild_png/guild_back_b_03_2.png | Bin 0 -> 3249 bytes
.../ryzom/guild_png/guild_back_b_04_1.png | Bin 0 -> 3042 bytes
.../ryzom/guild_png/guild_back_b_04_2.png | Bin 0 -> 3042 bytes
.../ryzom/guild_png/guild_back_b_05_1.png | Bin 0 -> 3825 bytes
.../ryzom/guild_png/guild_back_b_05_2.png | Bin 0 -> 3634 bytes
.../ryzom/guild_png/guild_back_b_06_1.png | Bin 0 -> 3875 bytes
.../ryzom/guild_png/guild_back_b_06_2.png | Bin 0 -> 3641 bytes
.../ryzom/guild_png/guild_back_b_07_1.png | Bin 0 -> 3776 bytes
.../ryzom/guild_png/guild_back_b_07_2.png | Bin 0 -> 3645 bytes
.../ryzom/guild_png/guild_back_b_08_1.png | Bin 0 -> 3722 bytes
.../ryzom/guild_png/guild_back_b_08_2.png | Bin 0 -> 3574 bytes
.../ryzom/guild_png/guild_back_b_09_1.png | Bin 0 -> 3381 bytes
.../ryzom/guild_png/guild_back_b_09_2.png | Bin 0 -> 3459 bytes
.../ryzom/guild_png/guild_back_b_10_1.png | Bin 0 -> 3517 bytes
.../ryzom/guild_png/guild_back_b_10_2.png | Bin 0 -> 3152 bytes
.../ryzom/guild_png/guild_back_b_11_1.png | Bin 0 -> 3603 bytes
.../ryzom/guild_png/guild_back_b_11_2.png | Bin 0 -> 3174 bytes
.../ryzom/guild_png/guild_back_b_12_1.png | Bin 0 -> 3612 bytes
.../ryzom/guild_png/guild_back_b_12_2.png | Bin 0 -> 3152 bytes
.../ryzom/guild_png/guild_back_b_13_1.png | Bin 0 -> 3493 bytes
.../ryzom/guild_png/guild_back_b_13_2.png | Bin 0 -> 3079 bytes
.../ryzom/guild_png/guild_back_b_14_1.png | Bin 0 -> 3133 bytes
.../ryzom/guild_png/guild_back_b_14_2.png | Bin 0 -> 2954 bytes
.../ryzom/guild_png/guild_back_s_00_1.png | Bin 0 -> 536 bytes
.../ryzom/guild_png/guild_back_s_00_2.png | Bin 0 -> 517 bytes
.../ryzom/guild_png/guild_back_s_01_1.png | Bin 0 -> 543 bytes
.../ryzom/guild_png/guild_back_s_01_2.png | Bin 0 -> 498 bytes
.../ryzom/guild_png/guild_back_s_02_1.png | Bin 0 -> 539 bytes
.../ryzom/guild_png/guild_back_s_02_2.png | Bin 0 -> 502 bytes
.../ryzom/guild_png/guild_back_s_03_1.png | Bin 0 -> 434 bytes
.../ryzom/guild_png/guild_back_s_03_2.png | Bin 0 -> 419 bytes
.../ryzom/guild_png/guild_back_s_04_1.png | Bin 0 -> 387 bytes
.../ryzom/guild_png/guild_back_s_04_2.png | Bin 0 -> 363 bytes
.../ryzom/guild_png/guild_back_s_05_1.png | Bin 0 -> 561 bytes
.../ryzom/guild_png/guild_back_s_05_2.png | Bin 0 -> 457 bytes
.../ryzom/guild_png/guild_back_s_06_1.png | Bin 0 -> 622 bytes
.../ryzom/guild_png/guild_back_s_06_2.png | Bin 0 -> 484 bytes
.../ryzom/guild_png/guild_back_s_07_1.png | Bin 0 -> 625 bytes
.../ryzom/guild_png/guild_back_s_07_2.png | Bin 0 -> 494 bytes
.../ryzom/guild_png/guild_back_s_08_1.png | Bin 0 -> 513 bytes
.../ryzom/guild_png/guild_back_s_08_2.png | Bin 0 -> 366 bytes
.../ryzom/guild_png/guild_back_s_09_1.png | Bin 0 -> 388 bytes
.../ryzom/guild_png/guild_back_s_09_2.png | Bin 0 -> 416 bytes
.../ryzom/guild_png/guild_back_s_10_1.png | Bin 0 -> 543 bytes
.../ryzom/guild_png/guild_back_s_10_2.png | Bin 0 -> 397 bytes
.../ryzom/guild_png/guild_back_s_11_1.png | Bin 0 -> 584 bytes
.../ryzom/guild_png/guild_back_s_11_2.png | Bin 0 -> 405 bytes
.../ryzom/guild_png/guild_back_s_12_1.png | Bin 0 -> 623 bytes
.../ryzom/guild_png/guild_back_s_12_2.png | Bin 0 -> 394 bytes
.../ryzom/guild_png/guild_back_s_13_1.png | Bin 0 -> 528 bytes
.../ryzom/guild_png/guild_back_s_13_2.png | Bin 0 -> 351 bytes
.../ryzom/guild_png/guild_back_s_14_1.png | Bin 0 -> 431 bytes
.../ryzom/guild_png/guild_back_s_14_2.png | Bin 0 -> 238 bytes
.../ryzom/guild_png/guild_symbol_b_00.png | Bin 0 -> 2851 bytes
.../ryzom/guild_png/guild_symbol_b_01.png | Bin 0 -> 2035 bytes
.../ryzom/guild_png/guild_symbol_b_02.png | Bin 0 -> 3081 bytes
.../ryzom/guild_png/guild_symbol_b_03.png | Bin 0 -> 1850 bytes
.../ryzom/guild_png/guild_symbol_b_04.png | Bin 0 -> 2424 bytes
.../ryzom/guild_png/guild_symbol_b_05.png | Bin 0 -> 1937 bytes
.../ryzom/guild_png/guild_symbol_b_06.png | Bin 0 -> 2192 bytes
.../ryzom/guild_png/guild_symbol_b_07.png | Bin 0 -> 2655 bytes
.../ryzom/guild_png/guild_symbol_b_08.png | Bin 0 -> 1757 bytes
.../ryzom/guild_png/guild_symbol_b_09.png | Bin 0 -> 3326 bytes
.../ryzom/guild_png/guild_symbol_b_10.png | Bin 0 -> 1561 bytes
.../ryzom/guild_png/guild_symbol_b_11.png | Bin 0 -> 2189 bytes
.../ryzom/guild_png/guild_symbol_b_12.png | Bin 0 -> 2029 bytes
.../ryzom/guild_png/guild_symbol_b_13.png | Bin 0 -> 2566 bytes
.../ryzom/guild_png/guild_symbol_b_14.png | Bin 0 -> 2617 bytes
.../ryzom/guild_png/guild_symbol_b_15.png | Bin 0 -> 2474 bytes
.../ryzom/guild_png/guild_symbol_b_16.png | Bin 0 -> 1915 bytes
.../ryzom/guild_png/guild_symbol_b_17.png | Bin 0 -> 2424 bytes
.../ryzom/guild_png/guild_symbol_b_18.png | Bin 0 -> 1850 bytes
.../ryzom/guild_png/guild_symbol_b_19.png | Bin 0 -> 1009 bytes
.../ryzom/guild_png/guild_symbol_b_20.png | Bin 0 -> 1656 bytes
.../ryzom/guild_png/guild_symbol_b_21.png | Bin 0 -> 2647 bytes
.../ryzom/guild_png/guild_symbol_b_22.png | Bin 0 -> 2739 bytes
.../ryzom/guild_png/guild_symbol_b_23.png | Bin 0 -> 3122 bytes
.../ryzom/guild_png/guild_symbol_b_24.png | Bin 0 -> 2923 bytes
.../ryzom/guild_png/guild_symbol_b_25.png | Bin 0 -> 1925 bytes
.../ryzom/guild_png/guild_symbol_b_26.png | Bin 0 -> 3289 bytes
.../ryzom/guild_png/guild_symbol_b_27.png | Bin 0 -> 1864 bytes
.../ryzom/guild_png/guild_symbol_b_28.png | Bin 0 -> 1515 bytes
.../ryzom/guild_png/guild_symbol_b_29.png | Bin 0 -> 2642 bytes
.../ryzom/guild_png/guild_symbol_b_30.png | Bin 0 -> 3340 bytes
.../ryzom/guild_png/guild_symbol_b_31.png | Bin 0 -> 3335 bytes
.../ryzom/guild_png/guild_symbol_b_32.png | Bin 0 -> 1410 bytes
.../ryzom/guild_png/guild_symbol_b_33.png | Bin 0 -> 2922 bytes
.../ryzom/guild_png/guild_symbol_b_34.png | Bin 0 -> 2349 bytes
.../ryzom/guild_png/guild_symbol_b_35.png | Bin 0 -> 1490 bytes
.../ryzom/guild_png/guild_symbol_b_36.png | Bin 0 -> 3116 bytes
.../ryzom/guild_png/guild_symbol_b_37.png | Bin 0 -> 1978 bytes
.../ryzom/guild_png/guild_symbol_b_38.png | Bin 0 -> 2939 bytes
.../ryzom/guild_png/guild_symbol_b_39.png | Bin 0 -> 3075 bytes
.../ryzom/guild_png/guild_symbol_b_40.png | Bin 0 -> 1264 bytes
.../ryzom/guild_png/guild_symbol_b_41.png | Bin 0 -> 1584 bytes
.../ryzom/guild_png/guild_symbol_b_42.png | Bin 0 -> 4013 bytes
.../ryzom/guild_png/guild_symbol_b_43.png | Bin 0 -> 2076 bytes
.../ryzom/guild_png/guild_symbol_s_00.png | Bin 0 -> 2125 bytes
.../ryzom/guild_png/guild_symbol_s_01.png | Bin 0 -> 1608 bytes
.../ryzom/guild_png/guild_symbol_s_02.png | Bin 0 -> 2156 bytes
.../ryzom/guild_png/guild_symbol_s_03.png | Bin 0 -> 1375 bytes
.../ryzom/guild_png/guild_symbol_s_04.png | Bin 0 -> 1951 bytes
.../ryzom/guild_png/guild_symbol_s_05.png | Bin 0 -> 1689 bytes
.../ryzom/guild_png/guild_symbol_s_06.png | Bin 0 -> 1393 bytes
.../ryzom/guild_png/guild_symbol_s_07.png | Bin 0 -> 1904 bytes
.../ryzom/guild_png/guild_symbol_s_08.png | Bin 0 -> 1117 bytes
.../ryzom/guild_png/guild_symbol_s_09.png | Bin 0 -> 2269 bytes
.../ryzom/guild_png/guild_symbol_s_10.png | Bin 0 -> 1117 bytes
.../ryzom/guild_png/guild_symbol_s_11.png | Bin 0 -> 1714 bytes
.../ryzom/guild_png/guild_symbol_s_12.png | Bin 0 -> 1530 bytes
.../ryzom/guild_png/guild_symbol_s_13.png | Bin 0 -> 1953 bytes
.../ryzom/guild_png/guild_symbol_s_14.png | Bin 0 -> 2012 bytes
.../ryzom/guild_png/guild_symbol_s_15.png | Bin 0 -> 2223 bytes
.../ryzom/guild_png/guild_symbol_s_16.png | Bin 0 -> 1552 bytes
.../ryzom/guild_png/guild_symbol_s_17.png | Bin 0 -> 1932 bytes
.../ryzom/guild_png/guild_symbol_s_18.png | Bin 0 -> 1360 bytes
.../ryzom/guild_png/guild_symbol_s_19.png | Bin 0 -> 828 bytes
.../ryzom/guild_png/guild_symbol_s_20.png | Bin 0 -> 1361 bytes
.../ryzom/guild_png/guild_symbol_s_21.png | Bin 0 -> 2076 bytes
.../ryzom/guild_png/guild_symbol_s_22.png | Bin 0 -> 1667 bytes
.../ryzom/guild_png/guild_symbol_s_23.png | Bin 0 -> 2418 bytes
.../ryzom/guild_png/guild_symbol_s_24.png | Bin 0 -> 2034 bytes
.../ryzom/guild_png/guild_symbol_s_25.png | Bin 0 -> 1542 bytes
.../ryzom/guild_png/guild_symbol_s_26.png | Bin 0 -> 2183 bytes
.../ryzom/guild_png/guild_symbol_s_27.png | Bin 0 -> 1490 bytes
.../ryzom/guild_png/guild_symbol_s_28.png | Bin 0 -> 1165 bytes
.../ryzom/guild_png/guild_symbol_s_29.png | Bin 0 -> 1848 bytes
.../ryzom/guild_png/guild_symbol_s_30.png | Bin 0 -> 2490 bytes
.../ryzom/guild_png/guild_symbol_s_31.png | Bin 0 -> 2481 bytes
.../ryzom/guild_png/guild_symbol_s_32.png | Bin 0 -> 1365 bytes
.../ryzom/guild_png/guild_symbol_s_33.png | Bin 0 -> 2224 bytes
.../ryzom/guild_png/guild_symbol_s_34.png | Bin 0 -> 1869 bytes
.../ryzom/guild_png/guild_symbol_s_35.png | Bin 0 -> 1280 bytes
.../ryzom/guild_png/guild_symbol_s_36.png | Bin 0 -> 2190 bytes
.../ryzom/guild_png/guild_symbol_s_37.png | Bin 0 -> 1543 bytes
.../ryzom/guild_png/guild_symbol_s_38.png | Bin 0 -> 2332 bytes
.../ryzom/guild_png/guild_symbol_s_39.png | Bin 0 -> 2390 bytes
.../ryzom/guild_png/guild_symbol_s_40.png | Bin 0 -> 1154 bytes
.../ryzom/guild_png/guild_symbol_s_41.png | Bin 0 -> 1301 bytes
.../ryzom/guild_png/guild_symbol_s_42.png | Bin 0 -> 2388 bytes
.../ryzom/guild_png/guild_symbol_s_43.png | Bin 0 -> 1981 bytes
code/web/api/data/ryzom/interface/1h_over.png | Bin 0 -> 402 bytes
code/web/api/data/ryzom/interface/2h_over.png | Bin 0 -> 529 bytes
code/web/api/data/ryzom/interface/am_logo.png | Bin 0 -> 619 bytes
.../api/data/ryzom/interface/ar_armpad.png | Bin 0 -> 3066 bytes
.../data/ryzom/interface/ar_armpad_mask.png | Bin 0 -> 1218 bytes
.../web/api/data/ryzom/interface/ar_botte.png | Bin 0 -> 2969 bytes
.../data/ryzom/interface/ar_botte_mask.png | Bin 0 -> 1367 bytes
.../web/api/data/ryzom/interface/ar_gilet.png | Bin 0 -> 3444 bytes
.../data/ryzom/interface/ar_gilet_mask.png | Bin 0 -> 1198 bytes
code/web/api/data/ryzom/interface/ar_hand.png | Bin 0 -> 2206 bytes
.../api/data/ryzom/interface/ar_hand_mask.png | Bin 0 -> 1097 bytes
.../api/data/ryzom/interface/ar_helmet.png | Bin 0 -> 3203 bytes
.../data/ryzom/interface/ar_helmet_mask.png | Bin 0 -> 1224 bytes
.../data/ryzom/interface/ar_pantabotte.png | Bin 0 -> 3388 bytes
.../ryzom/interface/ar_pantabotte_mask.png | Bin 0 -> 1887 bytes
.../web/api/data/ryzom/interface/asc_exit.png | Bin 0 -> 2532 bytes
.../ryzom/interface/asc_rolemastercraft.png | Bin 0 -> 2463 bytes
.../ryzom/interface/asc_rolemasterfight.png | Bin 0 -> 2640 bytes
.../ryzom/interface/asc_rolemasterharvest.png | Bin 0 -> 2456 bytes
.../ryzom/interface/asc_rolemastermagic.png | Bin 0 -> 2396 bytes
.../api/data/ryzom/interface/asc_unknown.png | Bin 0 -> 2368 bytes
.../data/ryzom/interface/bg_downloader.png | Bin 0 -> 1712 bytes
.../web/api/data/ryzom/interface/bg_empty.png | Bin 0 -> 1425 bytes
code/web/api/data/ryzom/interface/bk_aura.png | Bin 0 -> 709 bytes
.../web/api/data/ryzom/interface/bk_conso.png | Bin 0 -> 693 bytes
.../data/ryzom/interface/bk_consommable.png | Bin 0 -> 627 bytes
.../web/api/data/ryzom/interface/bk_fyros.png | Bin 0 -> 2656 bytes
.../data/ryzom/interface/bk_fyros_brick.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/bk_generic.png | Bin 0 -> 2607 bytes
.../data/ryzom/interface/bk_generic_brick.png | Bin 0 -> 121 bytes
code/web/api/data/ryzom/interface/bk_goo.png | Bin 0 -> 2348 bytes
.../web/api/data/ryzom/interface/bk_guild.png | Bin 0 -> 3095 bytes
.../web/api/data/ryzom/interface/bk_horde.png | Bin 0 -> 162 bytes
code/web/api/data/ryzom/interface/bk_kami.png | Bin 0 -> 2979 bytes
.../api/data/ryzom/interface/bk_karavan.png | Bin 0 -> 3037 bytes
.../ryzom/interface/bk_magie_noire_brick.png | Bin 0 -> 117 bytes
.../web/api/data/ryzom/interface/bk_matis.png | Bin 0 -> 3143 bytes
.../data/ryzom/interface/bk_matis_brick.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/bk_mission.png | Bin 0 -> 2459 bytes
.../api/data/ryzom/interface/bk_mission2.png | Bin 0 -> 2689 bytes
.../api/data/ryzom/interface/bk_outpost.png | Bin 0 -> 2607 bytes
.../data/ryzom/interface/bk_outpost_brick.png | Bin 0 -> 552 bytes
.../web/api/data/ryzom/interface/bk_power.png | Bin 0 -> 733 bytes
.../api/data/ryzom/interface/bk_primes.png | Bin 0 -> 2955 bytes
.../api/data/ryzom/interface/bk_service.png | Bin 0 -> 517 bytes
.../api/data/ryzom/interface/bk_training.png | Bin 0 -> 3057 bytes
.../api/data/ryzom/interface/bk_tryker.png | Bin 0 -> 3092 bytes
.../data/ryzom/interface/bk_tryker_brick.png | Bin 0 -> 117 bytes
.../web/api/data/ryzom/interface/bk_zorai.png | Bin 0 -> 3003 bytes
.../data/ryzom/interface/bk_zorai_brick.png | Bin 0 -> 121 bytes
.../data/ryzom/interface/brick_default.png | Bin 0 -> 1020 bytes
.../ryzom/interface/building_state_24x24.png | Bin 0 -> 1514 bytes
.../api/data/ryzom/interface/cb_main_nue.png | Bin 0 -> 1261 bytes
code/web/api/data/ryzom/interface/ch_back.png | Bin 0 -> 120 bytes
code/web/api/data/ryzom/interface/charge.png | Bin 0 -> 948 bytes
code/web/api/data/ryzom/interface/clef.png | Bin 0 -> 2318 bytes
.../data/ryzom/interface/conso_branche.png | Bin 0 -> 3436 bytes
.../ryzom/interface/conso_branche_mask.png | Bin 0 -> 549 bytes
.../api/data/ryzom/interface/conso_fleur.png | Bin 0 -> 3595 bytes
.../data/ryzom/interface/conso_fleur_mask.png | Bin 0 -> 1891 bytes
.../api/data/ryzom/interface/conso_grappe.png | Bin 0 -> 3602 bytes
.../ryzom/interface/conso_grappe_mask.png | Bin 0 -> 1963 bytes
.../api/data/ryzom/interface/conso_nectar.png | Bin 0 -> 3275 bytes
.../ryzom/interface/conso_nectar_mask.png | Bin 0 -> 658 bytes
.../api/data/ryzom/interface/construction.png | Bin 0 -> 3598 bytes
code/web/api/data/ryzom/interface/cp_back.png | Bin 0 -> 126 bytes
.../data/ryzom/interface/cp_over_break.png | Bin 0 -> 220 bytes
.../api/data/ryzom/interface/cp_over_less.png | Bin 0 -> 157 bytes
.../api/data/ryzom/interface/cp_over_more.png | Bin 0 -> 176 bytes
.../data/ryzom/interface/cp_over_opening.png | Bin 0 -> 141 bytes
.../ryzom/interface/cp_over_opening_2.png | Bin 0 -> 149 bytes
.../api/data/ryzom/interface/cristal_ammo.png | Bin 0 -> 2903 bytes
.../data/ryzom/interface/cristal_generic.png | Bin 0 -> 3045 bytes
.../data/ryzom/interface/cristal_spell.png | Bin 0 -> 3164 bytes
code/web/api/data/ryzom/interface/ef_back.png | Bin 0 -> 138 bytes
.../data/ryzom/interface/ef_over_break.png | Bin 0 -> 219 bytes
.../api/data/ryzom/interface/ef_over_less.png | Bin 0 -> 152 bytes
.../api/data/ryzom/interface/ef_over_more.png | Bin 0 -> 169 bytes
code/web/api/data/ryzom/interface/fo_back.png | Bin 0 -> 161 bytes
code/web/api/data/ryzom/interface/fo_over.png | Bin 0 -> 160 bytes
code/web/api/data/ryzom/interface/fp_ammo.png | Bin 0 -> 1136 bytes
.../web/api/data/ryzom/interface/fp_armor.png | Bin 0 -> 1553 bytes
.../api/data/ryzom/interface/fp_building.png | Bin 0 -> 1114 bytes
.../web/api/data/ryzom/interface/fp_jewel.png | Bin 0 -> 1322 bytes
.../web/api/data/ryzom/interface/fp_melee.png | Bin 0 -> 1316 bytes
code/web/api/data/ryzom/interface/fp_over.png | Bin 0 -> 156 bytes
.../web/api/data/ryzom/interface/fp_range.png | Bin 0 -> 1270 bytes
.../api/data/ryzom/interface/fp_shield.png | Bin 0 -> 1460 bytes
.../web/api/data/ryzom/interface/fp_tools.png | Bin 0 -> 1142 bytes
.../interface/ge_mission_outpost_townhall.png | Bin 0 -> 3368 bytes
.../ryzom/interface/ico_absorb_damage.png | Bin 0 -> 1020 bytes
.../api/data/ryzom/interface/ico_accurate.png | Bin 0 -> 1010 bytes
.../web/api/data/ryzom/interface/ico_acid.png | Bin 0 -> 883 bytes
code/web/api/data/ryzom/interface/ico_aim.png | Bin 0 -> 650 bytes
.../ryzom/interface/ico_aim_bird_wings.png | Bin 0 -> 1186 bytes
.../ico_aim_flying_kitin_abdomen.png | Bin 0 -> 1643 bytes
.../ryzom/interface/ico_aim_homin_arms.png | Bin 0 -> 1413 bytes
.../ryzom/interface/ico_aim_homin_chest.png | Bin 0 -> 1433 bytes
.../ryzom/interface/ico_aim_homin_feet.png | Bin 0 -> 1393 bytes
.../ryzom/interface/ico_aim_homin_feint.png | Bin 0 -> 1541 bytes
.../ryzom/interface/ico_aim_homin_hands.png | Bin 0 -> 1463 bytes
.../ryzom/interface/ico_aim_homin_head.png | Bin 0 -> 1379 bytes
.../ryzom/interface/ico_aim_homin_legs.png | Bin 0 -> 1397 bytes
.../ryzom/interface/ico_aim_kitin_head.png | Bin 0 -> 1473 bytes
.../api/data/ryzom/interface/ico_amande.png | Bin 0 -> 2738 bytes
.../data/ryzom/interface/ico_ammo_bullet.png | Bin 0 -> 911 bytes
.../data/ryzom/interface/ico_ammo_jacket.png | Bin 0 -> 1196 bytes
.../api/data/ryzom/interface/ico_angle.png | Bin 0 -> 1102 bytes
.../ryzom/interface/ico_anti_magic_shield.png | Bin 0 -> 1313 bytes
.../api/data/ryzom/interface/ico_armor.png | Bin 0 -> 1383 bytes
.../data/ryzom/interface/ico_armor_clip.png | Bin 0 -> 1066 bytes
.../data/ryzom/interface/ico_armor_heavy.png | Bin 0 -> 1276 bytes
.../data/ryzom/interface/ico_armor_kitin.png | Bin 0 -> 1261 bytes
.../data/ryzom/interface/ico_armor_light.png | Bin 0 -> 1320 bytes
.../data/ryzom/interface/ico_armor_medium.png | Bin 0 -> 1194 bytes
.../ryzom/interface/ico_armor_penalty.png | Bin 0 -> 1543 bytes
.../data/ryzom/interface/ico_armor_shell.png | Bin 0 -> 1519 bytes
.../web/api/data/ryzom/interface/ico_atys.png | Bin 0 -> 1532 bytes
.../api/data/ryzom/interface/ico_atysian.png | Bin 0 -> 733 bytes
.../data/ryzom/interface/ico_balance_hp.png | Bin 0 -> 863 bytes
.../api/data/ryzom/interface/ico_barrel.png | Bin 0 -> 1032 bytes
.../web/api/data/ryzom/interface/ico_bash.png | Bin 0 -> 1210 bytes
.../api/data/ryzom/interface/ico_berserk.png | Bin 0 -> 768 bytes
.../api/data/ryzom/interface/ico_blade.png | Bin 0 -> 781 bytes
.../api/data/ryzom/interface/ico_bleeding.png | Bin 0 -> 852 bytes
.../api/data/ryzom/interface/ico_blind.png | Bin 0 -> 922 bytes
.../api/data/ryzom/interface/ico_blunt.png | Bin 0 -> 930 bytes
.../web/api/data/ryzom/interface/ico_bomb.png | Bin 0 -> 1166 bytes
.../ryzom/interface/ico_cataliseur_xp.png | Bin 0 -> 4015 bytes
.../data/ryzom/interface/ico_celestial.png | Bin 0 -> 790 bytes
.../ryzom/interface/ico_circular_attack.png | Bin 0 -> 1574 bytes
.../api/data/ryzom/interface/ico_clothes.png | Bin 0 -> 1423 bytes
.../web/api/data/ryzom/interface/ico_cold.png | Bin 0 -> 1162 bytes
.../ryzom/interface/ico_concentration.png | Bin 0 -> 1405 bytes
.../ryzom/interface/ico_consommable_over.png | Bin 0 -> 472 bytes
.../data/ryzom/interface/ico_constitution.png | Bin 0 -> 920 bytes
.../ryzom/interface/ico_counterweight.png | Bin 0 -> 934 bytes
.../data/ryzom/interface/ico_craft_buff.png | Bin 0 -> 1326 bytes
.../ryzom/interface/ico_create_sapload.png | Bin 0 -> 1187 bytes
.../api/data/ryzom/interface/ico_curse.png | Bin 0 -> 761 bytes
.../api/data/ryzom/interface/ico_debuff.png | Bin 0 -> 863 bytes
.../ryzom/interface/ico_debuff_resist.png | Bin 0 -> 1340 bytes
.../data/ryzom/interface/ico_debuff_skill.png | Bin 0 -> 1345 bytes
.../api/data/ryzom/interface/ico_desert.png | Bin 0 -> 973 bytes
.../data/ryzom/interface/ico_dexterity.png | Bin 0 -> 950 bytes
.../api/data/ryzom/interface/ico_disarm.png | Bin 0 -> 978 bytes
.../api/data/ryzom/interface/ico_dodge.png | Bin 0 -> 906 bytes
code/web/api/data/ryzom/interface/ico_dot.png | Bin 0 -> 1200 bytes
.../data/ryzom/interface/ico_durability.png | Bin 0 -> 1021 bytes
.../api/data/ryzom/interface/ico_electric.png | Bin 0 -> 1372 bytes
.../api/data/ryzom/interface/ico_explosif.png | Bin 0 -> 682 bytes
.../data/ryzom/interface/ico_extracting.png | Bin 0 -> 1299 bytes
.../web/api/data/ryzom/interface/ico_fear.png | Bin 0 -> 1236 bytes
.../api/data/ryzom/interface/ico_feint.png | Bin 0 -> 1202 bytes
.../web/api/data/ryzom/interface/ico_fire.png | Bin 0 -> 1138 bytes
.../data/ryzom/interface/ico_firing_pin.png | Bin 0 -> 1382 bytes
.../ryzom/interface/ico_fleur_carac_1.png | Bin 0 -> 3025 bytes
.../interface/ico_fleur_carac_1_mask.png | Bin 0 -> 1490 bytes
.../ryzom/interface/ico_fleur_carac_2.png | Bin 0 -> 2513 bytes
.../interface/ico_fleur_carac_2_mask.png | Bin 0 -> 1111 bytes
.../ryzom/interface/ico_fleur_carac_3.png | Bin 0 -> 3175 bytes
.../interface/ico_fleur_carac_3_mask.png | Bin 0 -> 1536 bytes
.../api/data/ryzom/interface/ico_focus.png | Bin 0 -> 764 bytes
.../data/ryzom/interface/ico_forage_buff.png | Bin 0 -> 1644 bytes
.../data/ryzom/interface/ico_forbid_item.png | Bin 0 -> 1254 bytes
.../api/data/ryzom/interface/ico_forest.png | Bin 0 -> 1476 bytes
.../api/data/ryzom/interface/ico_foreuse.png | Bin 0 -> 3320 bytes
.../data/ryzom/interface/ico_gardening.png | Bin 0 -> 949 bytes
.../api/data/ryzom/interface/ico_gentle.png | Bin 0 -> 196 bytes
code/web/api/data/ryzom/interface/ico_goo.png | Bin 0 -> 1491 bytes
.../api/data/ryzom/interface/ico_gripp.png | Bin 0 -> 1011 bytes
.../data/ryzom/interface/ico_haircolor.png | Bin 0 -> 3453 bytes
.../api/data/ryzom/interface/ico_haircut.png | Bin 0 -> 3468 bytes
.../api/data/ryzom/interface/ico_hammer.png | Bin 0 -> 1065 bytes
.../api/data/ryzom/interface/ico_harmful.png | Bin 0 -> 194 bytes
.../api/data/ryzom/interface/ico_hatred.png | Bin 0 -> 1801 bytes
.../web/api/data/ryzom/interface/ico_heal.png | Bin 0 -> 746 bytes
.../api/data/ryzom/interface/ico_hit_rate.png | Bin 0 -> 1272 bytes
.../data/ryzom/interface/ico_incapacity.png | Bin 0 -> 952 bytes
.../data/ryzom/interface/ico_intelligence.png | Bin 0 -> 894 bytes
.../data/ryzom/interface/ico_interrupt.png | Bin 0 -> 852 bytes
.../ryzom/interface/ico_invulnerability.png | Bin 0 -> 1688 bytes
.../data/ryzom/interface/ico_jewel_stone.png | Bin 0 -> 1068 bytes
.../interface/ico_jewel_stone_support.png | Bin 0 -> 804 bytes
.../api/data/ryzom/interface/ico_jungle.png | Bin 0 -> 1237 bytes
.../api/data/ryzom/interface/ico_lacustre.png | Bin 0 -> 1427 bytes
.../ryzom/interface/ico_landmark_bonus.png | Bin 0 -> 762 bytes
.../api/data/ryzom/interface/ico_level.png | Bin 0 -> 504 bytes
.../api/data/ryzom/interface/ico_lining.png | Bin 0 -> 509 bytes
.../api/data/ryzom/interface/ico_location.png | Bin 0 -> 1331 bytes
.../api/data/ryzom/interface/ico_madness.png | Bin 0 -> 1161 bytes
.../api/data/ryzom/interface/ico_magic.png | Bin 0 -> 670 bytes
.../ryzom/interface/ico_magic_action_buff.png | Bin 0 -> 1368 bytes
.../data/ryzom/interface/ico_magic_focus.png | Bin 0 -> 847 bytes
.../ryzom/interface/ico_magic_target_buff.png | Bin 0 -> 1621 bytes
.../ryzom/interface/ico_melee_action_buff.png | Bin 0 -> 1266 bytes
.../ryzom/interface/ico_melee_target_buff.png | Bin 0 -> 1498 bytes
.../api/data/ryzom/interface/ico_mental.png | Bin 0 -> 1323 bytes
.../data/ryzom/interface/ico_metabolism.png | Bin 0 -> 702 bytes
.../web/api/data/ryzom/interface/ico_mezz.png | Bin 0 -> 720 bytes
.../data/ryzom/interface/ico_misfortune.png | Bin 0 -> 1199 bytes
.../ryzom/interface/ico_mission_art_fyros.png | Bin 0 -> 2988 bytes
.../ryzom/interface/ico_mission_art_matis.png | Bin 0 -> 2595 bytes
.../interface/ico_mission_art_tryker.png | Bin 0 -> 3258 bytes
.../ryzom/interface/ico_mission_art_zorai.png | Bin 0 -> 2790 bytes
.../ryzom/interface/ico_mission_barrel.png | Bin 0 -> 2927 bytes
.../ryzom/interface/ico_mission_bottle.png | Bin 0 -> 2684 bytes
.../ryzom/interface/ico_mission_casket.png | Bin 0 -> 2586 bytes
.../ryzom/interface/ico_mission_medicine.png | Bin 0 -> 2823 bytes
.../ryzom/interface/ico_mission_message.png | Bin 0 -> 2875 bytes
.../ryzom/interface/ico_mission_package.png | Bin 0 -> 3294 bytes
.../data/ryzom/interface/ico_mission_pot.png | Bin 0 -> 2470 bytes
.../ryzom/interface/ico_mission_purse.png | Bin 0 -> 3051 bytes
.../web/api/data/ryzom/interface/ico_move.png | Bin 0 -> 1009 bytes
.../data/ryzom/interface/ico_multi_fight.png | Bin 0 -> 917 bytes
.../ryzom/interface/ico_multiple_spots.png | Bin 0 -> 673 bytes
.../web/api/data/ryzom/interface/ico_noix.png | Bin 0 -> 3229 bytes
.../data/ryzom/interface/ico_opening_hit.png | Bin 0 -> 1270 bytes
.../data/ryzom/interface/ico_over_autumn.png | Bin 0 -> 311 bytes
.../ryzom/interface/ico_over_degenerated.png | Bin 0 -> 770 bytes
.../data/ryzom/interface/ico_over_fauna.png | Bin 0 -> 852 bytes
.../data/ryzom/interface/ico_over_flora.png | Bin 0 -> 699 bytes
.../ryzom/interface/ico_over_hit_arms.png | Bin 0 -> 630 bytes
.../ryzom/interface/ico_over_hit_chest.png | Bin 0 -> 635 bytes
.../ryzom/interface/ico_over_hit_feet.png | Bin 0 -> 510 bytes
.../interface/ico_over_hit_feet_hands.png | Bin 0 -> 595 bytes
.../interface/ico_over_hit_feet_head.png | Bin 0 -> 701 bytes
.../ryzom/interface/ico_over_hit_feet_x2.png | Bin 0 -> 540 bytes
.../ryzom/interface/ico_over_hit_feint_x3.png | Bin 0 -> 559 bytes
.../ryzom/interface/ico_over_hit_hands.png | Bin 0 -> 523 bytes
.../interface/ico_over_hit_hands_chest.png | Bin 0 -> 725 bytes
.../interface/ico_over_hit_hands_head.png | Bin 0 -> 790 bytes
.../ryzom/interface/ico_over_hit_head.png | Bin 0 -> 598 bytes
.../ryzom/interface/ico_over_hit_head_x3.png | Bin 0 -> 625 bytes
.../ryzom/interface/ico_over_hit_legs.png | Bin 0 -> 636 bytes
.../data/ryzom/interface/ico_over_homin.png | Bin 0 -> 750 bytes
.../data/ryzom/interface/ico_over_kitin.png | Bin 0 -> 1046 bytes
.../data/ryzom/interface/ico_over_magic.png | Bin 0 -> 688 bytes
.../data/ryzom/interface/ico_over_melee.png | Bin 0 -> 511 bytes
.../data/ryzom/interface/ico_over_racial.png | Bin 0 -> 708 bytes
.../data/ryzom/interface/ico_over_range.png | Bin 0 -> 495 bytes
.../data/ryzom/interface/ico_over_special.png | Bin 0 -> 268 bytes
.../data/ryzom/interface/ico_over_spring.png | Bin 0 -> 309 bytes
.../data/ryzom/interface/ico_over_summer.png | Bin 0 -> 303 bytes
.../data/ryzom/interface/ico_over_winter.png | Bin 0 -> 303 bytes
.../api/data/ryzom/interface/ico_parry.png | Bin 0 -> 700 bytes
.../api/data/ryzom/interface/ico_piercing.png | Bin 0 -> 1196 bytes
.../api/data/ryzom/interface/ico_pointe.png | Bin 0 -> 849 bytes
.../api/data/ryzom/interface/ico_poison.png | Bin 0 -> 808 bytes
.../api/data/ryzom/interface/ico_power.png | Bin 0 -> 899 bytes
.../data/ryzom/interface/ico_preservation.png | Bin 0 -> 1049 bytes
.../api/data/ryzom/interface/ico_primal.png | Bin 0 -> 765 bytes
.../data/ryzom/interface/ico_prime_roots.png | Bin 0 -> 1385 bytes
.../api/data/ryzom/interface/ico_private.png | Bin 0 -> 880 bytes
.../data/ryzom/interface/ico_prospecting.png | Bin 0 -> 897 bytes
.../api/data/ryzom/interface/ico_quality.png | Bin 0 -> 1193 bytes
.../api/data/ryzom/interface/ico_racine.png | Bin 0 -> 3220 bytes
.../api/data/ryzom/interface/ico_range.png | Bin 0 -> 945 bytes
.../ryzom/interface/ico_range_action_buff.png | Bin 0 -> 1718 bytes
.../ryzom/interface/ico_range_target_buff.png | Bin 0 -> 2047 bytes
.../api/data/ryzom/interface/ico_ricochet.png | Bin 0 -> 1042 bytes
.../web/api/data/ryzom/interface/ico_root.png | Bin 0 -> 1524 bytes
code/web/api/data/ryzom/interface/ico_rot.png | Bin 0 -> 1047 bytes
.../web/api/data/ryzom/interface/ico_safe.png | Bin 0 -> 1729 bytes
code/web/api/data/ryzom/interface/ico_sap.png | Bin 0 -> 724 bytes
.../data/ryzom/interface/ico_self_damage.png | Bin 0 -> 985 bytes
.../api/data/ryzom/interface/ico_shaft.png | Bin 0 -> 923 bytes
.../data/ryzom/interface/ico_shield_buff.png | Bin 0 -> 1579 bytes
.../data/ryzom/interface/ico_shield_up.png | Bin 0 -> 1406 bytes
.../data/ryzom/interface/ico_shielding.png | Bin 0 -> 1061 bytes
.../data/ryzom/interface/ico_shockwave.png | Bin 0 -> 1042 bytes
.../api/data/ryzom/interface/ico_sickness.png | Bin 0 -> 557 bytes
.../api/data/ryzom/interface/ico_slashing.png | Bin 0 -> 1017 bytes
.../web/api/data/ryzom/interface/ico_slow.png | Bin 0 -> 695 bytes
.../data/ryzom/interface/ico_soft_spot.png | Bin 0 -> 1220 bytes
.../ryzom/interface/ico_source_knowledge.png | Bin 0 -> 909 bytes
.../data/ryzom/interface/ico_source_time.png | Bin 0 -> 1662 bytes
.../api/data/ryzom/interface/ico_speed.png | Bin 0 -> 605 bytes
.../data/ryzom/interface/ico_speeding_up.png | Bin 0 -> 863 bytes
.../data/ryzom/interface/ico_spell_break.png | Bin 0 -> 1350 bytes
.../api/data/ryzom/interface/ico_spores.png | Bin 0 -> 2676 bytes
.../api/data/ryzom/interface/ico_spray.png | Bin 0 -> 1410 bytes
.../api/data/ryzom/interface/ico_spying.png | Bin 0 -> 1010 bytes
.../api/data/ryzom/interface/ico_stamina.png | Bin 0 -> 758 bytes
.../api/data/ryzom/interface/ico_strength.png | Bin 0 -> 945 bytes
.../api/data/ryzom/interface/ico_stuffing.png | Bin 0 -> 1470 bytes
.../api/data/ryzom/interface/ico_stunn.png | Bin 0 -> 1225 bytes
.../data/ryzom/interface/ico_task_craft.png | Bin 0 -> 3962 bytes
.../data/ryzom/interface/ico_task_done.png | Bin 0 -> 899 bytes
.../data/ryzom/interface/ico_task_failed.png | Bin 0 -> 1168 bytes
.../data/ryzom/interface/ico_task_fight.png | Bin 0 -> 3865 bytes
.../data/ryzom/interface/ico_task_forage.png | Bin 0 -> 3860 bytes
.../data/ryzom/interface/ico_task_generic.png | Bin 0 -> 3806 bytes
.../interface/ico_task_generic_quart.png | Bin 0 -> 3379 bytes
.../data/ryzom/interface/ico_task_guild.png | Bin 0 -> 3973 bytes
.../data/ryzom/interface/ico_task_rite.png | Bin 0 -> 3926 bytes
.../data/ryzom/interface/ico_task_travel.png | Bin 0 -> 3908 bytes
.../api/data/ryzom/interface/ico_tatoo.png | Bin 0 -> 4185 bytes
.../api/data/ryzom/interface/ico_taunt.png | Bin 0 -> 941 bytes
.../web/api/data/ryzom/interface/ico_time.png | Bin 0 -> 720 bytes
.../data/ryzom/interface/ico_time_bonus.png | Bin 0 -> 1028 bytes
.../api/data/ryzom/interface/ico_tourbe.png | Bin 0 -> 3161 bytes
.../api/data/ryzom/interface/ico_trigger.png | Bin 0 -> 762 bytes
.../api/data/ryzom/interface/ico_umbrella.png | Bin 0 -> 1298 bytes
.../ryzom/interface/ico_use_enchantement.png | Bin 0 -> 1230 bytes
.../api/data/ryzom/interface/ico_vampire.png | Bin 0 -> 687 bytes
.../data/ryzom/interface/ico_visibility.png | Bin 0 -> 886 bytes
.../api/data/ryzom/interface/ico_war_cry.png | Bin 0 -> 1172 bytes
.../api/data/ryzom/interface/ico_weight.png | Bin 0 -> 919 bytes
.../data/ryzom/interface/ico_wellbalanced.png | Bin 0 -> 726 bytes
.../web/api/data/ryzom/interface/ico_will.png | Bin 0 -> 716 bytes
.../api/data/ryzom/interface/ico_windding.png | Bin 0 -> 1170 bytes
.../api/data/ryzom/interface/ico_wisdom.png | Bin 0 -> 685 bytes
.../data/ryzom/interface/improved_tool.png | Bin 0 -> 3549 bytes
.../api/data/ryzom/interface/item_default.png | Bin 0 -> 1977 bytes
.../data/ryzom/interface/item_plan_over.png | Bin 0 -> 220 bytes
.../api/data/ryzom/interface/lucky_flower.png | Bin 0 -> 3527 bytes
code/web/api/data/ryzom/interface/mail.png | Bin 0 -> 1706 bytes
.../api/data/ryzom/interface/mektoub_pack.png | Bin 0 -> 4301 bytes
.../data/ryzom/interface/mektoub_steed.png | Bin 0 -> 3913 bytes
code/web/api/data/ryzom/interface/mf_back.png | Bin 0 -> 216 bytes
code/web/api/data/ryzom/interface/mf_over.png | Bin 0 -> 205 bytes
.../web/api/data/ryzom/interface/mg_glove.png | Bin 0 -> 3618 bytes
.../data/ryzom/interface/mission_icon_0.png | Bin 0 -> 2760 bytes
.../data/ryzom/interface/mission_icon_1.png | Bin 0 -> 2763 bytes
.../data/ryzom/interface/mission_icon_2.png | Bin 0 -> 2739 bytes
.../data/ryzom/interface/mission_icon_3.png | Bin 0 -> 2736 bytes
code/web/api/data/ryzom/interface/mp3.png | Bin 0 -> 1515 bytes
.../web/api/data/ryzom/interface/mp_amber.png | Bin 0 -> 2916 bytes
.../data/ryzom/interface/mp_back_curative.png | Bin 0 -> 193 bytes
.../ryzom/interface/mp_back_offensive.png | Bin 0 -> 190 bytes
.../data/ryzom/interface/mp_back_selfonly.png | Bin 0 -> 186 bytes
code/web/api/data/ryzom/interface/mp_bark.png | Bin 0 -> 2940 bytes
.../ryzom/interface/mp_batiment_brique.png | Bin 0 -> 2791 bytes
.../ryzom/interface/mp_batiment_colonne.png | Bin 0 -> 1691 bytes
.../interface/mp_batiment_colonne_justice.png | Bin 0 -> 2828 bytes
.../ryzom/interface/mp_batiment_comble.png | Bin 0 -> 2684 bytes
.../interface/mp_batiment_noyau_maduk.png | Bin 0 -> 3596 bytes
.../ryzom/interface/mp_batiment_ornement.png | Bin 0 -> 2444 bytes
.../interface/mp_batiment_revetement.png | Bin 0 -> 1912 bytes
.../ryzom/interface/mp_batiment_socle.png | Bin 0 -> 3064 bytes
.../ryzom/interface/mp_batiment_statue.png | Bin 0 -> 2945 bytes
code/web/api/data/ryzom/interface/mp_beak.png | Bin 0 -> 2440 bytes
.../web/api/data/ryzom/interface/mp_blood.png | Bin 0 -> 1474 bytes
code/web/api/data/ryzom/interface/mp_bone.png | Bin 0 -> 1825 bytes
code/web/api/data/ryzom/interface/mp_bud.png | Bin 0 -> 2469 bytes
.../data/ryzom/interface/mp_buterfly_blue.png | Bin 0 -> 2738 bytes
.../ryzom/interface/mp_buterfly_cocoon.png | Bin 0 -> 2460 bytes
.../api/data/ryzom/interface/mp_cereal.png | Bin 0 -> 3102 bytes
code/web/api/data/ryzom/interface/mp_claw.png | Bin 0 -> 2531 bytes
.../api/data/ryzom/interface/mp_dandelion.png | Bin 0 -> 4364 bytes
code/web/api/data/ryzom/interface/mp_dry | Bin 0 -> 10373 bytes
.../api/data/ryzom/interface/mp_dry wood.png | Bin 0 -> 2952 bytes
code/web/api/data/ryzom/interface/mp_dry.png | Bin 0 -> 14122 bytes
.../api/data/ryzom/interface/mp_dry_wood.png | Bin 0 -> 3057 bytes
code/web/api/data/ryzom/interface/mp_dust.png | Bin 0 -> 2971 bytes
code/web/api/data/ryzom/interface/mp_egg.png | Bin 0 -> 1765 bytes
code/web/api/data/ryzom/interface/mp_eyes.png | Bin 0 -> 2526 bytes
code/web/api/data/ryzom/interface/mp_fang.png | Bin 0 -> 2728 bytes
.../web/api/data/ryzom/interface/mp_fiber.png | Bin 0 -> 3737 bytes
.../api/data/ryzom/interface/mp_filament.png | Bin 0 -> 3290 bytes
.../ryzom/interface/mp_firefly_abdomen.png | Bin 0 -> 4004 bytes
.../data/ryzom/interface/mp_fish_scale.png | Bin 0 -> 3000 bytes
.../api/data/ryzom/interface/mp_flowers.png | Bin 0 -> 2345 bytes
.../ryzom/interface/mp_fresh_loose_soil.png | Bin 0 -> 1929 bytes
.../web/api/data/ryzom/interface/mp_fruit.png | Bin 0 -> 1683 bytes
.../api/data/ryzom/interface/mp_generic.png | Bin 0 -> 2498 bytes
.../ryzom/interface/mp_generic_colorize.png | Bin 0 -> 2606 bytes
.../web/api/data/ryzom/interface/mp_gomme.png | Bin 0 -> 2164 bytes
.../data/ryzom/interface/mp_goo_residue.png | Bin 0 -> 3168 bytes
.../web/api/data/ryzom/interface/mp_hairs.png | Bin 0 -> 2328 bytes
code/web/api/data/ryzom/interface/mp_hoof.png | Bin 0 -> 2884 bytes
code/web/api/data/ryzom/interface/mp_horn.png | Bin 0 -> 2277 bytes
.../api/data/ryzom/interface/mp_horney.png | Bin 0 -> 2835 bytes
.../data/ryzom/interface/mp_insect_fossil.png | Bin 0 -> 3390 bytes
.../data/ryzom/interface/mp_kitin_flesh.png | Bin 0 -> 2011 bytes
.../ryzom/interface/mp_kitin_secretion.png | Bin 0 -> 2878 bytes
.../data/ryzom/interface/mp_kitinshell.png | Bin 0 -> 3065 bytes
.../web/api/data/ryzom/interface/mp_larva.png | Bin 0 -> 2071 bytes
code/web/api/data/ryzom/interface/mp_leaf.png | Bin 0 -> 3436 bytes
.../api/data/ryzom/interface/mp_leather.png | Bin 0 -> 4001 bytes
.../web/api/data/ryzom/interface/mp_liane.png | Bin 0 -> 2574 bytes
.../api/data/ryzom/interface/mp_lichen.png | Bin 0 -> 3569 bytes
.../api/data/ryzom/interface/mp_ligament.png | Bin 0 -> 3341 bytes
.../api/data/ryzom/interface/mp_mandible.png | Bin 0 -> 2503 bytes
code/web/api/data/ryzom/interface/mp_meat.png | Bin 0 -> 2826 bytes
code/web/api/data/ryzom/interface/mp_moss.png | Bin 0 -> 3279 bytes
.../api/data/ryzom/interface/mp_mushroom.png | Bin 0 -> 3154 bytes
code/web/api/data/ryzom/interface/mp_nail.png | Bin 0 -> 2615 bytes
code/web/api/data/ryzom/interface/mp_oil.png | Bin 0 -> 3139 bytes
.../api/data/ryzom/interface/mp_over_link.png | Bin 0 -> 129 bytes
.../api/data/ryzom/interface/mp_parasite.png | Bin 0 -> 2865 bytes
.../web/api/data/ryzom/interface/mp_pearl.png | Bin 0 -> 2302 bytes
.../api/data/ryzom/interface/mp_pelvis.png | Bin 0 -> 3513 bytes
.../api/data/ryzom/interface/mp_pigment.png | Bin 0 -> 4092 bytes
.../api/data/ryzom/interface/mp_pistil.png | Bin 0 -> 2757 bytes
.../data/ryzom/interface/mp_plant_fossil.png | Bin 0 -> 2515 bytes
.../api/data/ryzom/interface/mp_pollen.png | Bin 0 -> 2314 bytes
.../web/api/data/ryzom/interface/mp_resin.png | Bin 0 -> 2994 bytes
.../web/api/data/ryzom/interface/mp_ronce.png | Bin 0 -> 2493 bytes
.../api/data/ryzom/interface/mp_rostrum.png | Bin 0 -> 2256 bytes
code/web/api/data/ryzom/interface/mp_sap.png | Bin 0 -> 2473 bytes
.../api/data/ryzom/interface/mp_sawdust.png | Bin 0 -> 3561 bytes
code/web/api/data/ryzom/interface/mp_seed.png | Bin 0 -> 3242 bytes
.../web/api/data/ryzom/interface/mp_shell.png | Bin 0 -> 3332 bytes
.../api/data/ryzom/interface/mp_silk_worm.png | Bin 0 -> 2479 bytes
code/web/api/data/ryzom/interface/mp_skin.png | Bin 0 -> 4247 bytes
.../web/api/data/ryzom/interface/mp_skull.png | Bin 0 -> 3406 bytes
.../data/ryzom/interface/mp_spiders_web.png | Bin 0 -> 4081 bytes
.../web/api/data/ryzom/interface/mp_spine.png | Bin 0 -> 1885 bytes
code/web/api/data/ryzom/interface/mp_stem.png | Bin 0 -> 3755 bytes
.../web/api/data/ryzom/interface/mp_sting.png | Bin 0 -> 1877 bytes
.../web/api/data/ryzom/interface/mp_straw.png | Bin 0 -> 2425 bytes
code/web/api/data/ryzom/interface/mp_suc.png | Bin 0 -> 2370 bytes
code/web/api/data/ryzom/interface/mp_tail.png | Bin 0 -> 2835 bytes
.../web/api/data/ryzom/interface/mp_tooth.png | Bin 0 -> 3003 bytes
.../web/api/data/ryzom/interface/mp_trunk.png | Bin 0 -> 2361 bytes
.../api/data/ryzom/interface/mp_whiskers.png | Bin 0 -> 2161 bytes
code/web/api/data/ryzom/interface/mp_wing.png | Bin 0 -> 2865 bytes
code/web/api/data/ryzom/interface/mp_wood.png | Bin 0 -> 2296 bytes
.../api/data/ryzom/interface/mp_wood_node.png | Bin 0 -> 2242 bytes
.../api/data/ryzom/interface/mw_2h_axe.png | Bin 0 -> 2312 bytes
.../api/data/ryzom/interface/mw_2h_lance.png | Bin 0 -> 1890 bytes
.../api/data/ryzom/interface/mw_2h_mace.png | Bin 0 -> 2152 bytes
.../api/data/ryzom/interface/mw_2h_sword.png | Bin 0 -> 2463 bytes
code/web/api/data/ryzom/interface/mw_axe.png | Bin 0 -> 1526 bytes
.../api/data/ryzom/interface/mw_dagger.png | Bin 0 -> 1075 bytes
.../web/api/data/ryzom/interface/mw_lance.png | Bin 0 -> 1341 bytes
code/web/api/data/ryzom/interface/mw_mace.png | Bin 0 -> 1507 bytes
.../web/api/data/ryzom/interface/mw_staff.png | Bin 0 -> 1021 bytes
.../web/api/data/ryzom/interface/mw_sword.png | Bin 0 -> 1894 bytes
.../api/data/ryzom/interface/no_action.png | Bin 0 -> 566 bytes
.../api/data/ryzom/interface/num_slash.png | Bin 0 -> 365 bytes
code/web/api/data/ryzom/interface/op_back.png | Bin 0 -> 126 bytes
.../data/ryzom/interface/op_over_break.png | Bin 0 -> 231 bytes
.../api/data/ryzom/interface/op_over_less.png | Bin 0 -> 157 bytes
.../api/data/ryzom/interface/op_over_more.png | Bin 0 -> 182 bytes
.../api/data/ryzom/interface/pa_anklet.png | Bin 0 -> 2128 bytes
code/web/api/data/ryzom/interface/pa_back.png | Bin 0 -> 125 bytes
.../api/data/ryzom/interface/pa_bracelet.png | Bin 0 -> 1872 bytes
.../api/data/ryzom/interface/pa_diadem.png | Bin 0 -> 1589 bytes
.../api/data/ryzom/interface/pa_earring.png | Bin 0 -> 816 bytes
.../data/ryzom/interface/pa_over_break.png | Bin 0 -> 222 bytes
.../api/data/ryzom/interface/pa_over_less.png | Bin 0 -> 157 bytes
.../api/data/ryzom/interface/pa_over_more.png | Bin 0 -> 178 bytes
.../api/data/ryzom/interface/pa_pendant.png | Bin 0 -> 1648 bytes
code/web/api/data/ryzom/interface/pa_ring.png | Bin 0 -> 1943 bytes
code/web/api/data/ryzom/interface/profile.png | Bin 0 -> 129 bytes
.../data/ryzom/interface/protect_amber.png | Bin 0 -> 3644 bytes
.../api/data/ryzom/interface/pvp_ally_0.png | Bin 0 -> 1598 bytes
.../api/data/ryzom/interface/pvp_ally_1.png | Bin 0 -> 1004 bytes
.../api/data/ryzom/interface/pvp_ally_2.png | Bin 0 -> 1261 bytes
.../api/data/ryzom/interface/pvp_ally_3.png | Bin 0 -> 1524 bytes
.../api/data/ryzom/interface/pvp_ally_4.png | Bin 0 -> 1404 bytes
.../api/data/ryzom/interface/pvp_ally_6.png | Bin 0 -> 1498 bytes
.../data/ryzom/interface/pvp_ally_primas.png | Bin 0 -> 1537 bytes
.../data/ryzom/interface/pvp_ally_ranger.png | Bin 0 -> 1255 bytes
.../web/api/data/ryzom/interface/pvp_aura.png | Bin 0 -> 1200 bytes
.../data/ryzom/interface/pvp_aura_mask.png | Bin 0 -> 2971 bytes
.../api/data/ryzom/interface/pvp_boost.png | Bin 0 -> 2884 bytes
.../data/ryzom/interface/pvp_boost_mask.png | Bin 0 -> 1102 bytes
.../api/data/ryzom/interface/pvp_enemy_0.png | Bin 0 -> 1439 bytes
.../api/data/ryzom/interface/pvp_enemy_1.png | Bin 0 -> 1281 bytes
.../api/data/ryzom/interface/pvp_enemy_2.png | Bin 0 -> 1302 bytes
.../api/data/ryzom/interface/pvp_enemy_3.png | Bin 0 -> 1532 bytes
.../api/data/ryzom/interface/pvp_enemy_4.png | Bin 0 -> 1546 bytes
.../api/data/ryzom/interface/pvp_enemy_6.png | Bin 0 -> 1612 bytes
.../ryzom/interface/pvp_enemy_marauder.png | Bin 0 -> 1170 bytes
.../ryzom/interface/pvp_enemy_trytonist.png | Bin 0 -> 1499 bytes
code/web/api/data/ryzom/interface/pw_4.png | Bin 0 -> 297 bytes
code/web/api/data/ryzom/interface/pw_5.png | Bin 0 -> 307 bytes
code/web/api/data/ryzom/interface/pw_6.png | Bin 0 -> 537 bytes
code/web/api/data/ryzom/interface/pw_7.png | Bin 0 -> 659 bytes
.../web/api/data/ryzom/interface/pw_heavy.png | Bin 0 -> 221 bytes
.../web/api/data/ryzom/interface/pw_light.png | Bin 0 -> 200 bytes
.../api/data/ryzom/interface/pw_medium.png | Bin 0 -> 214 bytes
.../api/data/ryzom/interface/quest_coeur.png | Bin 0 -> 2849 bytes
.../api/data/ryzom/interface/quest_foie.png | Bin 0 -> 3675 bytes
.../api/data/ryzom/interface/quest_jeton.png | Bin 0 -> 4192 bytes
.../api/data/ryzom/interface/quest_langue.png | Bin 0 -> 2421 bytes
.../api/data/ryzom/interface/quest_louche.png | Bin 0 -> 2290 bytes
.../data/ryzom/interface/quest_oreille.png | Bin 0 -> 3300 bytes
.../api/data/ryzom/interface/quest_patte.png | Bin 0 -> 3132 bytes
.../api/data/ryzom/interface/quest_poils.png | Bin 0 -> 3011 bytes
.../api/data/ryzom/interface/quest_queue.png | Bin 0 -> 2417 bytes
.../api/data/ryzom/interface/quest_ticket.png | Bin 0 -> 3397 bytes
code/web/api/data/ryzom/interface/r2_live.png | Bin 0 -> 3384 bytes
.../api/data/ryzom/interface/r2_live_over.png | Bin 0 -> 3964 bytes
.../data/ryzom/interface/r2_live_pushed.png | Bin 0 -> 2812 bytes
.../ryzom/interface/r2_palette_entities.png | Bin 0 -> 1481 bytes
.../api/data/ryzom/interface/requirement.png | Bin 0 -> 2791 bytes
code/web/api/data/ryzom/interface/rm_f.png | Bin 0 -> 2716 bytes
.../api/data/ryzom/interface/rm_f_upgrade.png | Bin 0 -> 2830 bytes
code/web/api/data/ryzom/interface/rm_h.png | Bin 0 -> 2567 bytes
.../api/data/ryzom/interface/rm_h_upgrade.png | Bin 0 -> 2682 bytes
code/web/api/data/ryzom/interface/rm_m.png | Bin 0 -> 2487 bytes
.../api/data/ryzom/interface/rm_m_upgrade.png | Bin 0 -> 2596 bytes
code/web/api/data/ryzom/interface/rm_r.png | Bin 0 -> 2561 bytes
.../api/data/ryzom/interface/rm_r_upgrade.png | Bin 0 -> 2668 bytes
.../api/data/ryzom/interface/rpjob_200.png | Bin 0 -> 3930 bytes
.../api/data/ryzom/interface/rpjob_201.png | Bin 0 -> 4027 bytes
.../api/data/ryzom/interface/rpjob_202.png | Bin 0 -> 3789 bytes
.../api/data/ryzom/interface/rpjob_203.png | Bin 0 -> 4267 bytes
.../api/data/ryzom/interface/rpjob_204.png | Bin 0 -> 3960 bytes
.../api/data/ryzom/interface/rpjob_205.png | Bin 0 -> 3452 bytes
.../api/data/ryzom/interface/rpjob_206.png | Bin 0 -> 4044 bytes
.../api/data/ryzom/interface/rpjob_207.png | Bin 0 -> 3968 bytes
.../data/ryzom/interface/rpjob_advanced.png | Bin 0 -> 4209 bytes
.../data/ryzom/interface/rpjob_elementary.png | Bin 0 -> 4140 bytes
.../data/ryzom/interface/rpjob_roleplay.png | Bin 0 -> 4209 bytes
.../api/data/ryzom/interface/rpjob_task.png | Bin 0 -> 4057 bytes
.../interface/rpjob_task_certificats.png | Bin 0 -> 4000 bytes
.../ryzom/interface/rpjob_task_convert.png | Bin 0 -> 3880 bytes
.../ryzom/interface/rpjob_task_elementary.png | Bin 0 -> 4325 bytes
.../ryzom/interface/rpjob_task_generic.png | Bin 0 -> 4025 bytes
.../ryzom/interface/rpjob_task_upgrade.png | Bin 0 -> 3888 bytes
.../data/ryzom/interface/rpjobitem_200_a.png | Bin 0 -> 3002 bytes
.../data/ryzom/interface/rpjobitem_200_b.png | Bin 0 -> 4253 bytes
.../data/ryzom/interface/rpjobitem_200_c.png | Bin 0 -> 3255 bytes
.../data/ryzom/interface/rpjobitem_201_a.png | Bin 0 -> 3988 bytes
.../data/ryzom/interface/rpjobitem_201_b.png | Bin 0 -> 3428 bytes
.../data/ryzom/interface/rpjobitem_201_c.png | Bin 0 -> 2616 bytes
.../data/ryzom/interface/rpjobitem_202_a.png | Bin 0 -> 4003 bytes
.../data/ryzom/interface/rpjobitem_202_b.png | Bin 0 -> 4050 bytes
.../data/ryzom/interface/rpjobitem_202_c.png | Bin 0 -> 2684 bytes
.../data/ryzom/interface/rpjobitem_203_a.png | Bin 0 -> 4719 bytes
.../data/ryzom/interface/rpjobitem_203_b.png | Bin 0 -> 4545 bytes
.../data/ryzom/interface/rpjobitem_203_c.png | Bin 0 -> 3848 bytes
.../data/ryzom/interface/rpjobitem_204_a.png | Bin 0 -> 2683 bytes
.../data/ryzom/interface/rpjobitem_204_b.png | Bin 0 -> 2779 bytes
.../data/ryzom/interface/rpjobitem_204_c.png | Bin 0 -> 2730 bytes
.../data/ryzom/interface/rpjobitem_205_a.png | Bin 0 -> 3577 bytes
.../data/ryzom/interface/rpjobitem_205_b.png | Bin 0 -> 3264 bytes
.../data/ryzom/interface/rpjobitem_205_c.png | Bin 0 -> 2513 bytes
.../data/ryzom/interface/rpjobitem_206_a.png | Bin 0 -> 2321 bytes
.../data/ryzom/interface/rpjobitem_206_b.png | Bin 0 -> 3529 bytes
.../data/ryzom/interface/rpjobitem_206_c.png | Bin 0 -> 2047 bytes
.../data/ryzom/interface/rpjobitem_207_a.png | Bin 0 -> 3947 bytes
.../data/ryzom/interface/rpjobitem_207_b.png | Bin 0 -> 3907 bytes
.../data/ryzom/interface/rpjobitem_207_c.png | Bin 0 -> 4055 bytes
.../interface/rpjobitem_certifications.png | Bin 0 -> 3864 bytes
.../data/ryzom/interface/rw_autolaunch.png | Bin 0 -> 2268 bytes
.../api/data/ryzom/interface/rw_bowgun.png | Bin 0 -> 2849 bytes
.../api/data/ryzom/interface/rw_grenade.png | Bin 0 -> 1230 bytes
.../data/ryzom/interface/rw_harpoongun.png | Bin 0 -> 1796 bytes
.../api/data/ryzom/interface/rw_launcher.png | Bin 0 -> 2563 bytes
.../api/data/ryzom/interface/rw_pistol.png | Bin 0 -> 1984 bytes
.../api/data/ryzom/interface/rw_pistolarc.png | Bin 0 -> 2282 bytes
.../web/api/data/ryzom/interface/rw_rifle.png | Bin 0 -> 2155 bytes
code/web/api/data/ryzom/interface/sapload.png | Bin 0 -> 1079 bytes
.../api/data/ryzom/interface/sh_buckler.png | Bin 0 -> 2540 bytes
.../data/ryzom/interface/sh_large_shield.png | Bin 0 -> 3386 bytes
.../data/ryzom/interface/small_task_craft.png | Bin 0 -> 824 bytes
.../data/ryzom/interface/small_task_done.png | Bin 0 -> 464 bytes
.../ryzom/interface/small_task_failed.png | Bin 0 -> 535 bytes
.../data/ryzom/interface/small_task_fight.png | Bin 0 -> 808 bytes
.../ryzom/interface/small_task_forage.png | Bin 0 -> 807 bytes
.../ryzom/interface/small_task_generic.png | Bin 0 -> 796 bytes
.../data/ryzom/interface/small_task_guild.png | Bin 0 -> 825 bytes
.../data/ryzom/interface/small_task_rite.png | Bin 0 -> 848 bytes
.../ryzom/interface/small_task_travel.png | Bin 0 -> 835 bytes
.../api/data/ryzom/interface/spe_beast.png | Bin 0 -> 3041 bytes
code/web/api/data/ryzom/interface/spe_com.png | Bin 0 -> 2443 bytes
.../data/ryzom/interface/spe_inventory.png | Bin 0 -> 3253 bytes
.../web/api/data/ryzom/interface/spe_labs.png | Bin 0 -> 3264 bytes
.../api/data/ryzom/interface/spe_memory.png | Bin 0 -> 3080 bytes
.../api/data/ryzom/interface/spe_options.png | Bin 0 -> 3407 bytes
.../api/data/ryzom/interface/spe_status.png | Bin 0 -> 2912 bytes
.../ryzom/interface/stimulating_water.png | Bin 0 -> 3567 bytes
.../data/ryzom/interface/tb_action_attack.png | Bin 0 -> 1669 bytes
.../data/ryzom/interface/tb_action_config.png | Bin 0 -> 1764 bytes
.../ryzom/interface/tb_action_disband.png | Bin 0 -> 1491 bytes
.../ryzom/interface/tb_action_disengage.png | Bin 0 -> 1727 bytes
.../ryzom/interface/tb_action_extract.png | Bin 0 -> 1678 bytes
.../data/ryzom/interface/tb_action_invite.png | Bin 0 -> 1416 bytes
.../data/ryzom/interface/tb_action_kick.png | Bin 0 -> 1401 bytes
.../data/ryzom/interface/tb_action_move.png | Bin 0 -> 1339 bytes
.../data/ryzom/interface/tb_action_run.png | Bin 0 -> 1598 bytes
.../data/ryzom/interface/tb_action_sit.png | Bin 0 -> 1565 bytes
.../data/ryzom/interface/tb_action_stand.png | Bin 0 -> 1434 bytes
.../data/ryzom/interface/tb_action_stop.png | Bin 0 -> 1336 bytes
.../data/ryzom/interface/tb_action_talk.png | Bin 0 -> 994 bytes
.../data/ryzom/interface/tb_action_walk.png | Bin 0 -> 1508 bytes
.../api/data/ryzom/interface/tb_animals.png | Bin 0 -> 1716 bytes
.../api/data/ryzom/interface/tb_config.png | Bin 0 -> 1764 bytes
.../data/ryzom/interface/tb_connection.png | Bin 0 -> 1278 bytes
.../api/data/ryzom/interface/tb_contacts.png | Bin 0 -> 1613 bytes
.../api/data/ryzom/interface/tb_desk_1.png | Bin 0 -> 717 bytes
.../api/data/ryzom/interface/tb_desk_2.png | Bin 0 -> 723 bytes
.../api/data/ryzom/interface/tb_desk_3.png | Bin 0 -> 707 bytes
.../api/data/ryzom/interface/tb_desk_4.png | Bin 0 -> 702 bytes
.../api/data/ryzom/interface/tb_faction.png | Bin 0 -> 1344 bytes
.../web/api/data/ryzom/interface/tb_forum.png | Bin 0 -> 1561 bytes
.../web/api/data/ryzom/interface/tb_guild.png | Bin 0 -> 1704 bytes
.../web/api/data/ryzom/interface/tb_help2.png | Bin 0 -> 1511 bytes
code/web/api/data/ryzom/interface/tb_keys.png | Bin 0 -> 1688 bytes
.../api/data/ryzom/interface/tb_macros.png | Bin 0 -> 1720 bytes
code/web/api/data/ryzom/interface/tb_mail.png | Bin 0 -> 1593 bytes
code/web/api/data/ryzom/interface/tb_mode.png | Bin 0 -> 401 bytes
.../data/ryzom/interface/tb_mode_dodge.png | Bin 0 -> 1541 bytes
.../data/ryzom/interface/tb_mode_parry.png | Bin 0 -> 1444 bytes
code/web/api/data/ryzom/interface/tb_over.png | Bin 0 -> 113 bytes
.../api/data/ryzom/interface/tb_support.png | Bin 0 -> 1535 bytes
code/web/api/data/ryzom/interface/tb_team.png | Bin 0 -> 1462 bytes
.../api/data/ryzom/interface/tb_windows.png | Bin 0 -> 770 bytes
.../api/data/ryzom/interface/tetekitin.png | Bin 0 -> 4058 bytes
code/web/api/data/ryzom/interface/to_ammo.png | Bin 0 -> 2936 bytes
.../web/api/data/ryzom/interface/to_armor.png | Bin 0 -> 3563 bytes
.../data/ryzom/interface/to_cooking_pot.png | Bin 0 -> 1958 bytes
.../data/ryzom/interface/to_fishing_rod.png | Bin 0 -> 1616 bytes
.../api/data/ryzom/interface/to_forage.png | Bin 0 -> 2589 bytes
.../api/data/ryzom/interface/to_hammer.png | Bin 0 -> 1826 bytes
.../ryzom/interface/to_jewelry_hammer.png | Bin 0 -> 1346 bytes
.../api/data/ryzom/interface/to_jewels.png | Bin 0 -> 3822 bytes
.../data/ryzom/interface/to_leathercutter.png | Bin 0 -> 1124 bytes
.../web/api/data/ryzom/interface/to_melee.png | Bin 0 -> 2691 bytes
.../api/data/ryzom/interface/to_needle.png | Bin 0 -> 1546 bytes
.../api/data/ryzom/interface/to_pestle.png | Bin 0 -> 3242 bytes
.../web/api/data/ryzom/interface/to_range.png | Bin 0 -> 3209 bytes
.../api/data/ryzom/interface/to_searake.png | Bin 0 -> 1062 bytes
.../web/api/data/ryzom/interface/to_spade.png | Bin 0 -> 1269 bytes
.../web/api/data/ryzom/interface/to_stick.png | Bin 0 -> 984 bytes
.../ryzom/interface/to_tunneling_knife.png | Bin 0 -> 1426 bytes
code/web/api/data/ryzom/interface/to_whip.png | Bin 0 -> 2155 bytes
.../api/data/ryzom/interface/to_wrench.png | Bin 0 -> 2053 bytes
.../api/data/ryzom/interface/tp_caravane.png | Bin 0 -> 3668 bytes
code/web/api/data/ryzom/interface/tp_kami.png | Bin 0 -> 4209 bytes
.../api/data/ryzom/interface/us_back_0.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_1.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_2.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_3.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_4.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_5.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_6.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_7.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_8.png | Bin 0 -> 117 bytes
.../api/data/ryzom/interface/us_back_9.png | Bin 0 -> 117 bytes
.../web/api/data/ryzom/interface/us_ico_0.png | Bin 0 -> 201 bytes
.../web/api/data/ryzom/interface/us_ico_1.png | Bin 0 -> 200 bytes
.../web/api/data/ryzom/interface/us_ico_2.png | Bin 0 -> 201 bytes
.../web/api/data/ryzom/interface/us_ico_3.png | Bin 0 -> 200 bytes
.../web/api/data/ryzom/interface/us_ico_4.png | Bin 0 -> 201 bytes
.../web/api/data/ryzom/interface/us_ico_5.png | Bin 0 -> 201 bytes
.../web/api/data/ryzom/interface/us_ico_6.png | Bin 0 -> 200 bytes
.../web/api/data/ryzom/interface/us_ico_7.png | Bin 0 -> 201 bytes
.../web/api/data/ryzom/interface/us_ico_8.png | Bin 0 -> 199 bytes
.../web/api/data/ryzom/interface/us_ico_9.png | Bin 0 -> 201 bytes
.../api/data/ryzom/interface/us_over_0.png | Bin 0 -> 180 bytes
.../api/data/ryzom/interface/us_over_1.png | Bin 0 -> 733 bytes
.../api/data/ryzom/interface/us_over_2.png | Bin 0 -> 529 bytes
.../api/data/ryzom/interface/us_over_3.png | Bin 0 -> 190 bytes
.../api/data/ryzom/interface/us_over_4.png | Bin 0 -> 126 bytes
.../api/data/ryzom/interface/w_am_logo.png | Bin 0 -> 566 bytes
.../web/api/data/ryzom/interface/w_leader.png | Bin 0 -> 401 bytes
code/web/api/data/ryzom/interface/w_major.png | Bin 0 -> 133 bytes
.../api/data/ryzom/interface/w_pa_anklet.png | Bin 0 -> 2129 bytes
.../data/ryzom/interface/w_pa_bracelet.png | Bin 0 -> 1806 bytes
.../api/data/ryzom/interface/w_pa_diadem.png | Bin 0 -> 1527 bytes
.../api/data/ryzom/interface/w_pa_earring.png | Bin 0 -> 793 bytes
.../api/data/ryzom/interface/w_pa_pendant.png | Bin 0 -> 1618 bytes
.../api/data/ryzom/interface/w_pa_ring.png | Bin 0 -> 1881 bytes
.../ryzom/interface/w_slot_shortcut_id0.png | Bin 0 -> 141 bytes
.../ryzom/interface/w_slot_shortcut_id1.png | Bin 0 -> 201 bytes
.../ryzom/interface/w_slot_shortcut_id2.png | Bin 0 -> 178 bytes
.../ryzom/interface/w_slot_shortcut_id3.png | Bin 0 -> 165 bytes
.../ryzom/interface/w_slot_shortcut_id4.png | Bin 0 -> 174 bytes
.../ryzom/interface/w_slot_shortcut_id5.png | Bin 0 -> 192 bytes
.../ryzom/interface/w_slot_shortcut_id6.png | Bin 0 -> 147 bytes
.../ryzom/interface/w_slot_shortcut_id7.png | Bin 0 -> 180 bytes
.../ryzom/interface/w_slot_shortcut_id8.png | Bin 0 -> 192 bytes
.../ryzom/interface/w_slot_shortcut_id9.png | Bin 0 -> 167 bytes
.../interface/w_slot_shortcut_shift_id0.png | Bin 0 -> 231 bytes
.../interface/w_slot_shortcut_shift_id1.png | Bin 0 -> 282 bytes
.../interface/w_slot_shortcut_shift_id2.png | Bin 0 -> 253 bytes
.../interface/w_slot_shortcut_shift_id3.png | Bin 0 -> 238 bytes
.../interface/w_slot_shortcut_shift_id4.png | Bin 0 -> 259 bytes
.../interface/w_slot_shortcut_shift_id5.png | Bin 0 -> 273 bytes
.../interface/w_slot_shortcut_shift_id6.png | Bin 0 -> 239 bytes
.../interface/w_slot_shortcut_shift_id7.png | Bin 0 -> 263 bytes
.../interface/w_slot_shortcut_shift_id8.png | Bin 0 -> 264 bytes
.../interface/w_slot_shortcut_shift_id9.png | Bin 0 -> 249 bytes
.../api/data/ryzom/interface/xp_cat_green.png | Bin 0 -> 3582 bytes
code/web/api/player_auth.php | 4 +-
code/web/api/ryzom_api.php | 35 +-
code/web/api/server/auth.php | 60 +-
code/web/api/server/config.php.default | 2 +
code/web/api/server/guilds.php | 62 +
code/web/api/server/hmagic.php | 108 +
code/web/api/server/item_icon.php | 266 +
code/web/api/server/time.php | 46 +
code/web/api/server/user.php | 44 +-
code/web/api/server/utils.php | 2 +-
code/web/api/time.php | 35 +
873 files changed, 13189 insertions(+), 214 deletions(-)
create mode 100644 code/web/api/client/time.php
create mode 100644 code/web/api/common/actionPage.php
create mode 100644 code/web/api/common/bbCode.php
create mode 100644 code/web/api/common/db_defs.php
create mode 100644 code/web/api/common/dfm.php
create mode 100644 code/web/api/common/ryform.php
create mode 100644 code/web/api/common/ryformBases.php
create mode 100644 code/web/api/common/time.php
create mode 100644 code/web/api/common/xml_utils.php
create mode 100755 code/web/api/data/icons/add_app.png
create mode 100644 code/web/api/data/icons/edit.png
create mode 100644 code/web/api/data/icons/edit_16.png
create mode 100755 code/web/api/data/icons/no_action.png
create mode 100644 code/web/api/data/icons/spe_com.png
create mode 100644 code/web/api/data/img/bordure.png
create mode 100644 code/web/api/data/img/lang/es.png
create mode 100644 code/web/api/data/js/combobox.js
create mode 100644 code/web/api/data/js/jquery-1.7.1.js
create mode 100644 code/web/api/data/ryzom/guild_png/.htaccess
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_00_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_00_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_01_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_01_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_02_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_02_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_03_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_03_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_04_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_04_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_05_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_05_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_06_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_06_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_07_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_07_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_08_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_08_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_09_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_09_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_10_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_10_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_11_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_11_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_12_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_12_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_13_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_13_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_14_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_b_14_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_00_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_00_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_01_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_01_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_02_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_02_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_03_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_03_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_04_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_04_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_05_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_05_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_06_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_06_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_07_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_07_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_08_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_08_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_09_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_09_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_10_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_10_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_11_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_11_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_12_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_12_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_13_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_13_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_14_1.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_back_s_14_2.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_00.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_01.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_02.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_03.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_04.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_05.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_06.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_07.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_08.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_09.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_10.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_11.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_12.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_13.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_14.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_15.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_16.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_17.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_18.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_19.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_20.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_21.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_22.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_23.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_24.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_25.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_26.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_27.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_28.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_29.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_30.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_31.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_32.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_33.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_34.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_35.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_36.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_37.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_38.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_39.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_40.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_41.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_42.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_b_43.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_00.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_01.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_02.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_03.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_04.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_05.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_06.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_07.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_08.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_09.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_10.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_11.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_12.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_13.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_14.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_15.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_16.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_17.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_18.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_19.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_20.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_21.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_22.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_23.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_24.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_25.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_26.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_27.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_28.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_29.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_30.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_31.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_32.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_33.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_34.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_35.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_36.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_37.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_38.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_39.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_40.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_41.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_42.png
create mode 100644 code/web/api/data/ryzom/guild_png/guild_symbol_s_43.png
create mode 100644 code/web/api/data/ryzom/interface/1h_over.png
create mode 100644 code/web/api/data/ryzom/interface/2h_over.png
create mode 100644 code/web/api/data/ryzom/interface/am_logo.png
create mode 100644 code/web/api/data/ryzom/interface/ar_armpad.png
create mode 100644 code/web/api/data/ryzom/interface/ar_armpad_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ar_botte.png
create mode 100644 code/web/api/data/ryzom/interface/ar_botte_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ar_gilet.png
create mode 100644 code/web/api/data/ryzom/interface/ar_gilet_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ar_hand.png
create mode 100644 code/web/api/data/ryzom/interface/ar_hand_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ar_helmet.png
create mode 100644 code/web/api/data/ryzom/interface/ar_helmet_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ar_pantabotte.png
create mode 100644 code/web/api/data/ryzom/interface/ar_pantabotte_mask.png
create mode 100644 code/web/api/data/ryzom/interface/asc_exit.png
create mode 100644 code/web/api/data/ryzom/interface/asc_rolemastercraft.png
create mode 100644 code/web/api/data/ryzom/interface/asc_rolemasterfight.png
create mode 100644 code/web/api/data/ryzom/interface/asc_rolemasterharvest.png
create mode 100644 code/web/api/data/ryzom/interface/asc_rolemastermagic.png
create mode 100644 code/web/api/data/ryzom/interface/asc_unknown.png
create mode 100644 code/web/api/data/ryzom/interface/bg_downloader.png
create mode 100644 code/web/api/data/ryzom/interface/bg_empty.png
create mode 100644 code/web/api/data/ryzom/interface/bk_aura.png
create mode 100644 code/web/api/data/ryzom/interface/bk_conso.png
create mode 100644 code/web/api/data/ryzom/interface/bk_consommable.png
create mode 100644 code/web/api/data/ryzom/interface/bk_fyros.png
create mode 100644 code/web/api/data/ryzom/interface/bk_fyros_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_generic.png
create mode 100644 code/web/api/data/ryzom/interface/bk_generic_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_goo.png
create mode 100644 code/web/api/data/ryzom/interface/bk_guild.png
create mode 100644 code/web/api/data/ryzom/interface/bk_horde.png
create mode 100644 code/web/api/data/ryzom/interface/bk_kami.png
create mode 100644 code/web/api/data/ryzom/interface/bk_karavan.png
create mode 100644 code/web/api/data/ryzom/interface/bk_magie_noire_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_matis.png
create mode 100644 code/web/api/data/ryzom/interface/bk_matis_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_mission.png
create mode 100644 code/web/api/data/ryzom/interface/bk_mission2.png
create mode 100644 code/web/api/data/ryzom/interface/bk_outpost.png
create mode 100644 code/web/api/data/ryzom/interface/bk_outpost_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_power.png
create mode 100644 code/web/api/data/ryzom/interface/bk_primes.png
create mode 100644 code/web/api/data/ryzom/interface/bk_service.png
create mode 100644 code/web/api/data/ryzom/interface/bk_training.png
create mode 100644 code/web/api/data/ryzom/interface/bk_tryker.png
create mode 100644 code/web/api/data/ryzom/interface/bk_tryker_brick.png
create mode 100644 code/web/api/data/ryzom/interface/bk_zorai.png
create mode 100644 code/web/api/data/ryzom/interface/bk_zorai_brick.png
create mode 100644 code/web/api/data/ryzom/interface/brick_default.png
create mode 100644 code/web/api/data/ryzom/interface/building_state_24x24.png
create mode 100644 code/web/api/data/ryzom/interface/cb_main_nue.png
create mode 100644 code/web/api/data/ryzom/interface/ch_back.png
create mode 100644 code/web/api/data/ryzom/interface/charge.png
create mode 100644 code/web/api/data/ryzom/interface/clef.png
create mode 100644 code/web/api/data/ryzom/interface/conso_branche.png
create mode 100644 code/web/api/data/ryzom/interface/conso_branche_mask.png
create mode 100644 code/web/api/data/ryzom/interface/conso_fleur.png
create mode 100644 code/web/api/data/ryzom/interface/conso_fleur_mask.png
create mode 100644 code/web/api/data/ryzom/interface/conso_grappe.png
create mode 100644 code/web/api/data/ryzom/interface/conso_grappe_mask.png
create mode 100644 code/web/api/data/ryzom/interface/conso_nectar.png
create mode 100644 code/web/api/data/ryzom/interface/conso_nectar_mask.png
create mode 100644 code/web/api/data/ryzom/interface/construction.png
create mode 100644 code/web/api/data/ryzom/interface/cp_back.png
create mode 100644 code/web/api/data/ryzom/interface/cp_over_break.png
create mode 100644 code/web/api/data/ryzom/interface/cp_over_less.png
create mode 100644 code/web/api/data/ryzom/interface/cp_over_more.png
create mode 100644 code/web/api/data/ryzom/interface/cp_over_opening.png
create mode 100644 code/web/api/data/ryzom/interface/cp_over_opening_2.png
create mode 100644 code/web/api/data/ryzom/interface/cristal_ammo.png
create mode 100644 code/web/api/data/ryzom/interface/cristal_generic.png
create mode 100644 code/web/api/data/ryzom/interface/cristal_spell.png
create mode 100644 code/web/api/data/ryzom/interface/ef_back.png
create mode 100644 code/web/api/data/ryzom/interface/ef_over_break.png
create mode 100644 code/web/api/data/ryzom/interface/ef_over_less.png
create mode 100644 code/web/api/data/ryzom/interface/ef_over_more.png
create mode 100644 code/web/api/data/ryzom/interface/fo_back.png
create mode 100644 code/web/api/data/ryzom/interface/fo_over.png
create mode 100644 code/web/api/data/ryzom/interface/fp_ammo.png
create mode 100644 code/web/api/data/ryzom/interface/fp_armor.png
create mode 100644 code/web/api/data/ryzom/interface/fp_building.png
create mode 100644 code/web/api/data/ryzom/interface/fp_jewel.png
create mode 100644 code/web/api/data/ryzom/interface/fp_melee.png
create mode 100644 code/web/api/data/ryzom/interface/fp_over.png
create mode 100644 code/web/api/data/ryzom/interface/fp_range.png
create mode 100644 code/web/api/data/ryzom/interface/fp_shield.png
create mode 100644 code/web/api/data/ryzom/interface/fp_tools.png
create mode 100644 code/web/api/data/ryzom/interface/ge_mission_outpost_townhall.png
create mode 100644 code/web/api/data/ryzom/interface/ico_absorb_damage.png
create mode 100644 code/web/api/data/ryzom/interface/ico_accurate.png
create mode 100644 code/web/api/data/ryzom/interface/ico_acid.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_bird_wings.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_flying_kitin_abdomen.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_arms.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_chest.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_feet.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_feint.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_hands.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_head.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_homin_legs.png
create mode 100644 code/web/api/data/ryzom/interface/ico_aim_kitin_head.png
create mode 100644 code/web/api/data/ryzom/interface/ico_amande.png
create mode 100644 code/web/api/data/ryzom/interface/ico_ammo_bullet.png
create mode 100644 code/web/api/data/ryzom/interface/ico_ammo_jacket.png
create mode 100644 code/web/api/data/ryzom/interface/ico_angle.png
create mode 100644 code/web/api/data/ryzom/interface/ico_anti_magic_shield.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_clip.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_heavy.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_kitin.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_light.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_medium.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_penalty.png
create mode 100644 code/web/api/data/ryzom/interface/ico_armor_shell.png
create mode 100644 code/web/api/data/ryzom/interface/ico_atys.png
create mode 100644 code/web/api/data/ryzom/interface/ico_atysian.png
create mode 100644 code/web/api/data/ryzom/interface/ico_balance_hp.png
create mode 100644 code/web/api/data/ryzom/interface/ico_barrel.png
create mode 100644 code/web/api/data/ryzom/interface/ico_bash.png
create mode 100644 code/web/api/data/ryzom/interface/ico_berserk.png
create mode 100644 code/web/api/data/ryzom/interface/ico_blade.png
create mode 100644 code/web/api/data/ryzom/interface/ico_bleeding.png
create mode 100644 code/web/api/data/ryzom/interface/ico_blind.png
create mode 100644 code/web/api/data/ryzom/interface/ico_blunt.png
create mode 100644 code/web/api/data/ryzom/interface/ico_bomb.png
create mode 100644 code/web/api/data/ryzom/interface/ico_cataliseur_xp.png
create mode 100644 code/web/api/data/ryzom/interface/ico_celestial.png
create mode 100644 code/web/api/data/ryzom/interface/ico_circular_attack.png
create mode 100644 code/web/api/data/ryzom/interface/ico_clothes.png
create mode 100644 code/web/api/data/ryzom/interface/ico_cold.png
create mode 100644 code/web/api/data/ryzom/interface/ico_concentration.png
create mode 100644 code/web/api/data/ryzom/interface/ico_consommable_over.png
create mode 100644 code/web/api/data/ryzom/interface/ico_constitution.png
create mode 100644 code/web/api/data/ryzom/interface/ico_counterweight.png
create mode 100644 code/web/api/data/ryzom/interface/ico_craft_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_create_sapload.png
create mode 100644 code/web/api/data/ryzom/interface/ico_curse.png
create mode 100644 code/web/api/data/ryzom/interface/ico_debuff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_debuff_resist.png
create mode 100644 code/web/api/data/ryzom/interface/ico_debuff_skill.png
create mode 100644 code/web/api/data/ryzom/interface/ico_desert.png
create mode 100644 code/web/api/data/ryzom/interface/ico_dexterity.png
create mode 100644 code/web/api/data/ryzom/interface/ico_disarm.png
create mode 100644 code/web/api/data/ryzom/interface/ico_dodge.png
create mode 100644 code/web/api/data/ryzom/interface/ico_dot.png
create mode 100644 code/web/api/data/ryzom/interface/ico_durability.png
create mode 100644 code/web/api/data/ryzom/interface/ico_electric.png
create mode 100644 code/web/api/data/ryzom/interface/ico_explosif.png
create mode 100644 code/web/api/data/ryzom/interface/ico_extracting.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fear.png
create mode 100644 code/web/api/data/ryzom/interface/ico_feint.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fire.png
create mode 100644 code/web/api/data/ryzom/interface/ico_firing_pin.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_1.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_1_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_2.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_2_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_3.png
create mode 100644 code/web/api/data/ryzom/interface/ico_fleur_carac_3_mask.png
create mode 100644 code/web/api/data/ryzom/interface/ico_focus.png
create mode 100644 code/web/api/data/ryzom/interface/ico_forage_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_forbid_item.png
create mode 100644 code/web/api/data/ryzom/interface/ico_forest.png
create mode 100644 code/web/api/data/ryzom/interface/ico_foreuse.png
create mode 100644 code/web/api/data/ryzom/interface/ico_gardening.png
create mode 100644 code/web/api/data/ryzom/interface/ico_gentle.png
create mode 100644 code/web/api/data/ryzom/interface/ico_goo.png
create mode 100644 code/web/api/data/ryzom/interface/ico_gripp.png
create mode 100644 code/web/api/data/ryzom/interface/ico_haircolor.png
create mode 100644 code/web/api/data/ryzom/interface/ico_haircut.png
create mode 100644 code/web/api/data/ryzom/interface/ico_hammer.png
create mode 100644 code/web/api/data/ryzom/interface/ico_harmful.png
create mode 100644 code/web/api/data/ryzom/interface/ico_hatred.png
create mode 100644 code/web/api/data/ryzom/interface/ico_heal.png
create mode 100644 code/web/api/data/ryzom/interface/ico_hit_rate.png
create mode 100644 code/web/api/data/ryzom/interface/ico_incapacity.png
create mode 100644 code/web/api/data/ryzom/interface/ico_intelligence.png
create mode 100644 code/web/api/data/ryzom/interface/ico_interrupt.png
create mode 100644 code/web/api/data/ryzom/interface/ico_invulnerability.png
create mode 100644 code/web/api/data/ryzom/interface/ico_jewel_stone.png
create mode 100644 code/web/api/data/ryzom/interface/ico_jewel_stone_support.png
create mode 100644 code/web/api/data/ryzom/interface/ico_jungle.png
create mode 100644 code/web/api/data/ryzom/interface/ico_lacustre.png
create mode 100644 code/web/api/data/ryzom/interface/ico_landmark_bonus.png
create mode 100644 code/web/api/data/ryzom/interface/ico_level.png
create mode 100644 code/web/api/data/ryzom/interface/ico_lining.png
create mode 100644 code/web/api/data/ryzom/interface/ico_location.png
create mode 100644 code/web/api/data/ryzom/interface/ico_madness.png
create mode 100644 code/web/api/data/ryzom/interface/ico_magic.png
create mode 100644 code/web/api/data/ryzom/interface/ico_magic_action_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_magic_focus.png
create mode 100644 code/web/api/data/ryzom/interface/ico_magic_target_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_melee_action_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_melee_target_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mental.png
create mode 100644 code/web/api/data/ryzom/interface/ico_metabolism.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mezz.png
create mode 100644 code/web/api/data/ryzom/interface/ico_misfortune.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_art_fyros.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_art_matis.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_art_tryker.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_art_zorai.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_barrel.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_bottle.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_casket.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_medicine.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_message.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_package.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_pot.png
create mode 100644 code/web/api/data/ryzom/interface/ico_mission_purse.png
create mode 100644 code/web/api/data/ryzom/interface/ico_move.png
create mode 100644 code/web/api/data/ryzom/interface/ico_multi_fight.png
create mode 100644 code/web/api/data/ryzom/interface/ico_multiple_spots.png
create mode 100644 code/web/api/data/ryzom/interface/ico_noix.png
create mode 100644 code/web/api/data/ryzom/interface/ico_opening_hit.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_autumn.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_degenerated.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_fauna.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_flora.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_arms.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_chest.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_feet.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_feet_hands.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_feet_head.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_feet_x2.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_feint_x3.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_hands.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_hands_chest.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_hands_head.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_head.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_head_x3.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_hit_legs.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_homin.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_kitin.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_magic.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_melee.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_racial.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_range.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_special.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_spring.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_summer.png
create mode 100644 code/web/api/data/ryzom/interface/ico_over_winter.png
create mode 100644 code/web/api/data/ryzom/interface/ico_parry.png
create mode 100644 code/web/api/data/ryzom/interface/ico_piercing.png
create mode 100644 code/web/api/data/ryzom/interface/ico_pointe.png
create mode 100644 code/web/api/data/ryzom/interface/ico_poison.png
create mode 100644 code/web/api/data/ryzom/interface/ico_power.png
create mode 100644 code/web/api/data/ryzom/interface/ico_preservation.png
create mode 100644 code/web/api/data/ryzom/interface/ico_primal.png
create mode 100644 code/web/api/data/ryzom/interface/ico_prime_roots.png
create mode 100644 code/web/api/data/ryzom/interface/ico_private.png
create mode 100644 code/web/api/data/ryzom/interface/ico_prospecting.png
create mode 100644 code/web/api/data/ryzom/interface/ico_quality.png
create mode 100644 code/web/api/data/ryzom/interface/ico_racine.png
create mode 100644 code/web/api/data/ryzom/interface/ico_range.png
create mode 100644 code/web/api/data/ryzom/interface/ico_range_action_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_range_target_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_ricochet.png
create mode 100644 code/web/api/data/ryzom/interface/ico_root.png
create mode 100644 code/web/api/data/ryzom/interface/ico_rot.png
create mode 100644 code/web/api/data/ryzom/interface/ico_safe.png
create mode 100644 code/web/api/data/ryzom/interface/ico_sap.png
create mode 100644 code/web/api/data/ryzom/interface/ico_self_damage.png
create mode 100644 code/web/api/data/ryzom/interface/ico_shaft.png
create mode 100644 code/web/api/data/ryzom/interface/ico_shield_buff.png
create mode 100644 code/web/api/data/ryzom/interface/ico_shield_up.png
create mode 100644 code/web/api/data/ryzom/interface/ico_shielding.png
create mode 100644 code/web/api/data/ryzom/interface/ico_shockwave.png
create mode 100644 code/web/api/data/ryzom/interface/ico_sickness.png
create mode 100644 code/web/api/data/ryzom/interface/ico_slashing.png
create mode 100644 code/web/api/data/ryzom/interface/ico_slow.png
create mode 100644 code/web/api/data/ryzom/interface/ico_soft_spot.png
create mode 100644 code/web/api/data/ryzom/interface/ico_source_knowledge.png
create mode 100644 code/web/api/data/ryzom/interface/ico_source_time.png
create mode 100644 code/web/api/data/ryzom/interface/ico_speed.png
create mode 100644 code/web/api/data/ryzom/interface/ico_speeding_up.png
create mode 100644 code/web/api/data/ryzom/interface/ico_spell_break.png
create mode 100644 code/web/api/data/ryzom/interface/ico_spores.png
create mode 100644 code/web/api/data/ryzom/interface/ico_spray.png
create mode 100644 code/web/api/data/ryzom/interface/ico_spying.png
create mode 100644 code/web/api/data/ryzom/interface/ico_stamina.png
create mode 100644 code/web/api/data/ryzom/interface/ico_strength.png
create mode 100644 code/web/api/data/ryzom/interface/ico_stuffing.png
create mode 100644 code/web/api/data/ryzom/interface/ico_stunn.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_craft.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_done.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_failed.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_fight.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_forage.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_generic.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_generic_quart.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_guild.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_rite.png
create mode 100644 code/web/api/data/ryzom/interface/ico_task_travel.png
create mode 100644 code/web/api/data/ryzom/interface/ico_tatoo.png
create mode 100644 code/web/api/data/ryzom/interface/ico_taunt.png
create mode 100644 code/web/api/data/ryzom/interface/ico_time.png
create mode 100644 code/web/api/data/ryzom/interface/ico_time_bonus.png
create mode 100644 code/web/api/data/ryzom/interface/ico_tourbe.png
create mode 100644 code/web/api/data/ryzom/interface/ico_trigger.png
create mode 100644 code/web/api/data/ryzom/interface/ico_umbrella.png
create mode 100644 code/web/api/data/ryzom/interface/ico_use_enchantement.png
create mode 100644 code/web/api/data/ryzom/interface/ico_vampire.png
create mode 100644 code/web/api/data/ryzom/interface/ico_visibility.png
create mode 100644 code/web/api/data/ryzom/interface/ico_war_cry.png
create mode 100644 code/web/api/data/ryzom/interface/ico_weight.png
create mode 100644 code/web/api/data/ryzom/interface/ico_wellbalanced.png
create mode 100644 code/web/api/data/ryzom/interface/ico_will.png
create mode 100644 code/web/api/data/ryzom/interface/ico_windding.png
create mode 100644 code/web/api/data/ryzom/interface/ico_wisdom.png
create mode 100644 code/web/api/data/ryzom/interface/improved_tool.png
create mode 100644 code/web/api/data/ryzom/interface/item_default.png
create mode 100644 code/web/api/data/ryzom/interface/item_plan_over.png
create mode 100644 code/web/api/data/ryzom/interface/lucky_flower.png
create mode 100644 code/web/api/data/ryzom/interface/mail.png
create mode 100644 code/web/api/data/ryzom/interface/mektoub_pack.png
create mode 100644 code/web/api/data/ryzom/interface/mektoub_steed.png
create mode 100644 code/web/api/data/ryzom/interface/mf_back.png
create mode 100644 code/web/api/data/ryzom/interface/mf_over.png
create mode 100644 code/web/api/data/ryzom/interface/mg_glove.png
create mode 100644 code/web/api/data/ryzom/interface/mission_icon_0.png
create mode 100644 code/web/api/data/ryzom/interface/mission_icon_1.png
create mode 100644 code/web/api/data/ryzom/interface/mission_icon_2.png
create mode 100644 code/web/api/data/ryzom/interface/mission_icon_3.png
create mode 100644 code/web/api/data/ryzom/interface/mp3.png
create mode 100644 code/web/api/data/ryzom/interface/mp_amber.png
create mode 100644 code/web/api/data/ryzom/interface/mp_back_curative.png
create mode 100644 code/web/api/data/ryzom/interface/mp_back_offensive.png
create mode 100644 code/web/api/data/ryzom/interface/mp_back_selfonly.png
create mode 100644 code/web/api/data/ryzom/interface/mp_bark.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_brique.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_colonne.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_colonne_justice.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_comble.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_noyau_maduk.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_ornement.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_revetement.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_socle.png
create mode 100644 code/web/api/data/ryzom/interface/mp_batiment_statue.png
create mode 100644 code/web/api/data/ryzom/interface/mp_beak.png
create mode 100644 code/web/api/data/ryzom/interface/mp_blood.png
create mode 100644 code/web/api/data/ryzom/interface/mp_bone.png
create mode 100644 code/web/api/data/ryzom/interface/mp_bud.png
create mode 100644 code/web/api/data/ryzom/interface/mp_buterfly_blue.png
create mode 100644 code/web/api/data/ryzom/interface/mp_buterfly_cocoon.png
create mode 100644 code/web/api/data/ryzom/interface/mp_cereal.png
create mode 100644 code/web/api/data/ryzom/interface/mp_claw.png
create mode 100644 code/web/api/data/ryzom/interface/mp_dandelion.png
create mode 100644 code/web/api/data/ryzom/interface/mp_dry
create mode 100644 code/web/api/data/ryzom/interface/mp_dry wood.png
create mode 100644 code/web/api/data/ryzom/interface/mp_dry.png
create mode 100644 code/web/api/data/ryzom/interface/mp_dry_wood.png
create mode 100644 code/web/api/data/ryzom/interface/mp_dust.png
create mode 100644 code/web/api/data/ryzom/interface/mp_egg.png
create mode 100644 code/web/api/data/ryzom/interface/mp_eyes.png
create mode 100644 code/web/api/data/ryzom/interface/mp_fang.png
create mode 100644 code/web/api/data/ryzom/interface/mp_fiber.png
create mode 100644 code/web/api/data/ryzom/interface/mp_filament.png
create mode 100644 code/web/api/data/ryzom/interface/mp_firefly_abdomen.png
create mode 100644 code/web/api/data/ryzom/interface/mp_fish_scale.png
create mode 100644 code/web/api/data/ryzom/interface/mp_flowers.png
create mode 100644 code/web/api/data/ryzom/interface/mp_fresh_loose_soil.png
create mode 100644 code/web/api/data/ryzom/interface/mp_fruit.png
create mode 100644 code/web/api/data/ryzom/interface/mp_generic.png
create mode 100644 code/web/api/data/ryzom/interface/mp_generic_colorize.png
create mode 100644 code/web/api/data/ryzom/interface/mp_gomme.png
create mode 100644 code/web/api/data/ryzom/interface/mp_goo_residue.png
create mode 100644 code/web/api/data/ryzom/interface/mp_hairs.png
create mode 100644 code/web/api/data/ryzom/interface/mp_hoof.png
create mode 100644 code/web/api/data/ryzom/interface/mp_horn.png
create mode 100644 code/web/api/data/ryzom/interface/mp_horney.png
create mode 100644 code/web/api/data/ryzom/interface/mp_insect_fossil.png
create mode 100644 code/web/api/data/ryzom/interface/mp_kitin_flesh.png
create mode 100644 code/web/api/data/ryzom/interface/mp_kitin_secretion.png
create mode 100644 code/web/api/data/ryzom/interface/mp_kitinshell.png
create mode 100644 code/web/api/data/ryzom/interface/mp_larva.png
create mode 100644 code/web/api/data/ryzom/interface/mp_leaf.png
create mode 100644 code/web/api/data/ryzom/interface/mp_leather.png
create mode 100644 code/web/api/data/ryzom/interface/mp_liane.png
create mode 100644 code/web/api/data/ryzom/interface/mp_lichen.png
create mode 100644 code/web/api/data/ryzom/interface/mp_ligament.png
create mode 100644 code/web/api/data/ryzom/interface/mp_mandible.png
create mode 100644 code/web/api/data/ryzom/interface/mp_meat.png
create mode 100644 code/web/api/data/ryzom/interface/mp_moss.png
create mode 100644 code/web/api/data/ryzom/interface/mp_mushroom.png
create mode 100644 code/web/api/data/ryzom/interface/mp_nail.png
create mode 100644 code/web/api/data/ryzom/interface/mp_oil.png
create mode 100644 code/web/api/data/ryzom/interface/mp_over_link.png
create mode 100644 code/web/api/data/ryzom/interface/mp_parasite.png
create mode 100644 code/web/api/data/ryzom/interface/mp_pearl.png
create mode 100644 code/web/api/data/ryzom/interface/mp_pelvis.png
create mode 100644 code/web/api/data/ryzom/interface/mp_pigment.png
create mode 100644 code/web/api/data/ryzom/interface/mp_pistil.png
create mode 100644 code/web/api/data/ryzom/interface/mp_plant_fossil.png
create mode 100644 code/web/api/data/ryzom/interface/mp_pollen.png
create mode 100644 code/web/api/data/ryzom/interface/mp_resin.png
create mode 100644 code/web/api/data/ryzom/interface/mp_ronce.png
create mode 100644 code/web/api/data/ryzom/interface/mp_rostrum.png
create mode 100644 code/web/api/data/ryzom/interface/mp_sap.png
create mode 100644 code/web/api/data/ryzom/interface/mp_sawdust.png
create mode 100644 code/web/api/data/ryzom/interface/mp_seed.png
create mode 100644 code/web/api/data/ryzom/interface/mp_shell.png
create mode 100644 code/web/api/data/ryzom/interface/mp_silk_worm.png
create mode 100644 code/web/api/data/ryzom/interface/mp_skin.png
create mode 100644 code/web/api/data/ryzom/interface/mp_skull.png
create mode 100644 code/web/api/data/ryzom/interface/mp_spiders_web.png
create mode 100644 code/web/api/data/ryzom/interface/mp_spine.png
create mode 100644 code/web/api/data/ryzom/interface/mp_stem.png
create mode 100644 code/web/api/data/ryzom/interface/mp_sting.png
create mode 100644 code/web/api/data/ryzom/interface/mp_straw.png
create mode 100644 code/web/api/data/ryzom/interface/mp_suc.png
create mode 100644 code/web/api/data/ryzom/interface/mp_tail.png
create mode 100644 code/web/api/data/ryzom/interface/mp_tooth.png
create mode 100644 code/web/api/data/ryzom/interface/mp_trunk.png
create mode 100644 code/web/api/data/ryzom/interface/mp_whiskers.png
create mode 100644 code/web/api/data/ryzom/interface/mp_wing.png
create mode 100644 code/web/api/data/ryzom/interface/mp_wood.png
create mode 100644 code/web/api/data/ryzom/interface/mp_wood_node.png
create mode 100644 code/web/api/data/ryzom/interface/mw_2h_axe.png
create mode 100644 code/web/api/data/ryzom/interface/mw_2h_lance.png
create mode 100644 code/web/api/data/ryzom/interface/mw_2h_mace.png
create mode 100644 code/web/api/data/ryzom/interface/mw_2h_sword.png
create mode 100644 code/web/api/data/ryzom/interface/mw_axe.png
create mode 100644 code/web/api/data/ryzom/interface/mw_dagger.png
create mode 100644 code/web/api/data/ryzom/interface/mw_lance.png
create mode 100644 code/web/api/data/ryzom/interface/mw_mace.png
create mode 100644 code/web/api/data/ryzom/interface/mw_staff.png
create mode 100644 code/web/api/data/ryzom/interface/mw_sword.png
create mode 100644 code/web/api/data/ryzom/interface/no_action.png
create mode 100644 code/web/api/data/ryzom/interface/num_slash.png
create mode 100644 code/web/api/data/ryzom/interface/op_back.png
create mode 100644 code/web/api/data/ryzom/interface/op_over_break.png
create mode 100644 code/web/api/data/ryzom/interface/op_over_less.png
create mode 100644 code/web/api/data/ryzom/interface/op_over_more.png
create mode 100644 code/web/api/data/ryzom/interface/pa_anklet.png
create mode 100644 code/web/api/data/ryzom/interface/pa_back.png
create mode 100644 code/web/api/data/ryzom/interface/pa_bracelet.png
create mode 100644 code/web/api/data/ryzom/interface/pa_diadem.png
create mode 100644 code/web/api/data/ryzom/interface/pa_earring.png
create mode 100644 code/web/api/data/ryzom/interface/pa_over_break.png
create mode 100644 code/web/api/data/ryzom/interface/pa_over_less.png
create mode 100644 code/web/api/data/ryzom/interface/pa_over_more.png
create mode 100644 code/web/api/data/ryzom/interface/pa_pendant.png
create mode 100644 code/web/api/data/ryzom/interface/pa_ring.png
create mode 100644 code/web/api/data/ryzom/interface/profile.png
create mode 100644 code/web/api/data/ryzom/interface/protect_amber.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_0.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_1.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_2.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_3.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_4.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_6.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_primas.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_ally_ranger.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_aura.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_aura_mask.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_boost.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_boost_mask.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_0.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_1.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_2.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_3.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_4.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_6.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_marauder.png
create mode 100644 code/web/api/data/ryzom/interface/pvp_enemy_trytonist.png
create mode 100644 code/web/api/data/ryzom/interface/pw_4.png
create mode 100644 code/web/api/data/ryzom/interface/pw_5.png
create mode 100644 code/web/api/data/ryzom/interface/pw_6.png
create mode 100644 code/web/api/data/ryzom/interface/pw_7.png
create mode 100644 code/web/api/data/ryzom/interface/pw_heavy.png
create mode 100644 code/web/api/data/ryzom/interface/pw_light.png
create mode 100644 code/web/api/data/ryzom/interface/pw_medium.png
create mode 100644 code/web/api/data/ryzom/interface/quest_coeur.png
create mode 100644 code/web/api/data/ryzom/interface/quest_foie.png
create mode 100644 code/web/api/data/ryzom/interface/quest_jeton.png
create mode 100644 code/web/api/data/ryzom/interface/quest_langue.png
create mode 100644 code/web/api/data/ryzom/interface/quest_louche.png
create mode 100644 code/web/api/data/ryzom/interface/quest_oreille.png
create mode 100644 code/web/api/data/ryzom/interface/quest_patte.png
create mode 100644 code/web/api/data/ryzom/interface/quest_poils.png
create mode 100644 code/web/api/data/ryzom/interface/quest_queue.png
create mode 100644 code/web/api/data/ryzom/interface/quest_ticket.png
create mode 100644 code/web/api/data/ryzom/interface/r2_live.png
create mode 100644 code/web/api/data/ryzom/interface/r2_live_over.png
create mode 100644 code/web/api/data/ryzom/interface/r2_live_pushed.png
create mode 100644 code/web/api/data/ryzom/interface/r2_palette_entities.png
create mode 100644 code/web/api/data/ryzom/interface/requirement.png
create mode 100644 code/web/api/data/ryzom/interface/rm_f.png
create mode 100644 code/web/api/data/ryzom/interface/rm_f_upgrade.png
create mode 100644 code/web/api/data/ryzom/interface/rm_h.png
create mode 100644 code/web/api/data/ryzom/interface/rm_h_upgrade.png
create mode 100644 code/web/api/data/ryzom/interface/rm_m.png
create mode 100644 code/web/api/data/ryzom/interface/rm_m_upgrade.png
create mode 100644 code/web/api/data/ryzom/interface/rm_r.png
create mode 100644 code/web/api/data/ryzom/interface/rm_r_upgrade.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_200.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_201.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_202.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_203.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_204.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_205.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_206.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_207.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_advanced.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_elementary.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_roleplay.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task_certificats.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task_convert.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task_elementary.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task_generic.png
create mode 100644 code/web/api/data/ryzom/interface/rpjob_task_upgrade.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_200_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_200_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_200_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_201_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_201_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_201_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_202_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_202_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_202_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_203_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_203_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_203_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_204_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_204_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_204_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_205_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_205_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_205_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_206_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_206_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_206_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_207_a.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_207_b.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_207_c.png
create mode 100644 code/web/api/data/ryzom/interface/rpjobitem_certifications.png
create mode 100644 code/web/api/data/ryzom/interface/rw_autolaunch.png
create mode 100644 code/web/api/data/ryzom/interface/rw_bowgun.png
create mode 100644 code/web/api/data/ryzom/interface/rw_grenade.png
create mode 100644 code/web/api/data/ryzom/interface/rw_harpoongun.png
create mode 100644 code/web/api/data/ryzom/interface/rw_launcher.png
create mode 100644 code/web/api/data/ryzom/interface/rw_pistol.png
create mode 100644 code/web/api/data/ryzom/interface/rw_pistolarc.png
create mode 100644 code/web/api/data/ryzom/interface/rw_rifle.png
create mode 100644 code/web/api/data/ryzom/interface/sapload.png
create mode 100644 code/web/api/data/ryzom/interface/sh_buckler.png
create mode 100644 code/web/api/data/ryzom/interface/sh_large_shield.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_craft.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_done.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_failed.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_fight.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_forage.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_generic.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_guild.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_rite.png
create mode 100644 code/web/api/data/ryzom/interface/small_task_travel.png
create mode 100644 code/web/api/data/ryzom/interface/spe_beast.png
create mode 100644 code/web/api/data/ryzom/interface/spe_com.png
create mode 100644 code/web/api/data/ryzom/interface/spe_inventory.png
create mode 100644 code/web/api/data/ryzom/interface/spe_labs.png
create mode 100644 code/web/api/data/ryzom/interface/spe_memory.png
create mode 100644 code/web/api/data/ryzom/interface/spe_options.png
create mode 100644 code/web/api/data/ryzom/interface/spe_status.png
create mode 100644 code/web/api/data/ryzom/interface/stimulating_water.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_attack.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_config.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_disband.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_disengage.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_extract.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_invite.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_kick.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_move.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_run.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_sit.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_stand.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_stop.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_talk.png
create mode 100644 code/web/api/data/ryzom/interface/tb_action_walk.png
create mode 100644 code/web/api/data/ryzom/interface/tb_animals.png
create mode 100644 code/web/api/data/ryzom/interface/tb_config.png
create mode 100644 code/web/api/data/ryzom/interface/tb_connection.png
create mode 100644 code/web/api/data/ryzom/interface/tb_contacts.png
create mode 100644 code/web/api/data/ryzom/interface/tb_desk_1.png
create mode 100644 code/web/api/data/ryzom/interface/tb_desk_2.png
create mode 100644 code/web/api/data/ryzom/interface/tb_desk_3.png
create mode 100644 code/web/api/data/ryzom/interface/tb_desk_4.png
create mode 100644 code/web/api/data/ryzom/interface/tb_faction.png
create mode 100644 code/web/api/data/ryzom/interface/tb_forum.png
create mode 100644 code/web/api/data/ryzom/interface/tb_guild.png
create mode 100644 code/web/api/data/ryzom/interface/tb_help2.png
create mode 100644 code/web/api/data/ryzom/interface/tb_keys.png
create mode 100644 code/web/api/data/ryzom/interface/tb_macros.png
create mode 100644 code/web/api/data/ryzom/interface/tb_mail.png
create mode 100644 code/web/api/data/ryzom/interface/tb_mode.png
create mode 100644 code/web/api/data/ryzom/interface/tb_mode_dodge.png
create mode 100644 code/web/api/data/ryzom/interface/tb_mode_parry.png
create mode 100644 code/web/api/data/ryzom/interface/tb_over.png
create mode 100644 code/web/api/data/ryzom/interface/tb_support.png
create mode 100644 code/web/api/data/ryzom/interface/tb_team.png
create mode 100644 code/web/api/data/ryzom/interface/tb_windows.png
create mode 100644 code/web/api/data/ryzom/interface/tetekitin.png
create mode 100644 code/web/api/data/ryzom/interface/to_ammo.png
create mode 100644 code/web/api/data/ryzom/interface/to_armor.png
create mode 100644 code/web/api/data/ryzom/interface/to_cooking_pot.png
create mode 100644 code/web/api/data/ryzom/interface/to_fishing_rod.png
create mode 100644 code/web/api/data/ryzom/interface/to_forage.png
create mode 100644 code/web/api/data/ryzom/interface/to_hammer.png
create mode 100644 code/web/api/data/ryzom/interface/to_jewelry_hammer.png
create mode 100644 code/web/api/data/ryzom/interface/to_jewels.png
create mode 100644 code/web/api/data/ryzom/interface/to_leathercutter.png
create mode 100644 code/web/api/data/ryzom/interface/to_melee.png
create mode 100644 code/web/api/data/ryzom/interface/to_needle.png
create mode 100644 code/web/api/data/ryzom/interface/to_pestle.png
create mode 100644 code/web/api/data/ryzom/interface/to_range.png
create mode 100644 code/web/api/data/ryzom/interface/to_searake.png
create mode 100644 code/web/api/data/ryzom/interface/to_spade.png
create mode 100644 code/web/api/data/ryzom/interface/to_stick.png
create mode 100644 code/web/api/data/ryzom/interface/to_tunneling_knife.png
create mode 100644 code/web/api/data/ryzom/interface/to_whip.png
create mode 100644 code/web/api/data/ryzom/interface/to_wrench.png
create mode 100644 code/web/api/data/ryzom/interface/tp_caravane.png
create mode 100644 code/web/api/data/ryzom/interface/tp_kami.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_0.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_1.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_2.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_3.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_4.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_5.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_6.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_7.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_8.png
create mode 100644 code/web/api/data/ryzom/interface/us_back_9.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_0.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_1.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_2.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_3.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_4.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_5.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_6.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_7.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_8.png
create mode 100644 code/web/api/data/ryzom/interface/us_ico_9.png
create mode 100644 code/web/api/data/ryzom/interface/us_over_0.png
create mode 100644 code/web/api/data/ryzom/interface/us_over_1.png
create mode 100644 code/web/api/data/ryzom/interface/us_over_2.png
create mode 100644 code/web/api/data/ryzom/interface/us_over_3.png
create mode 100644 code/web/api/data/ryzom/interface/us_over_4.png
create mode 100644 code/web/api/data/ryzom/interface/w_am_logo.png
create mode 100644 code/web/api/data/ryzom/interface/w_leader.png
create mode 100644 code/web/api/data/ryzom/interface/w_major.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_anklet.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_bracelet.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_diadem.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_earring.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_pendant.png
create mode 100644 code/web/api/data/ryzom/interface/w_pa_ring.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id0.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id1.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id2.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id3.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id4.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id5.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id6.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id7.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id8.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_id9.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id0.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id1.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id2.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id3.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id4.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id5.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id6.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id7.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id8.png
create mode 100644 code/web/api/data/ryzom/interface/w_slot_shortcut_shift_id9.png
create mode 100644 code/web/api/data/ryzom/interface/xp_cat_green.png
create mode 100644 code/web/api/server/guilds.php
create mode 100644 code/web/api/server/hmagic.php
create mode 100644 code/web/api/server/item_icon.php
create mode 100644 code/web/api/server/time.php
create mode 100644 code/web/api/time.php
diff --git a/code/web/api/client/config.php.default b/code/web/api/client/config.php.default
index 3c8ca869d..6cdbff401 100644
--- a/code/web/api/client/config.php.default
+++ b/code/web/api/client/config.php.default
@@ -17,4 +17,4 @@
*/
// Url where player_auth.php is located
-define('RYAPI_AUTH_SCRIPT', '');
+define('RYAPI_AUTH_SCRIPT', '');
\ No newline at end of file
diff --git a/code/web/api/client/time.php b/code/web/api/client/time.php
new file mode 100644
index 000000000..4b81db42a
--- /dev/null
+++ b/code/web/api/client/time.php
@@ -0,0 +1,46 @@
+.
+ */
+
+$tick_cache_timeout = 60;
+
+function ryzom_time_tick() {
+ $fn = RYAPI_URL.'data/cache/game_cycle.ticks';
+ $handle = fopen($fn, "r");
+ $version = fread($handle, 1);
+ $raw_tick = fread($handle, 4);
+ fclose($handle);
+ $arr = unpack("V", $raw_tick);
+ $tick = $arr[1];
+ return sprintf("%u", $tick & 0xffffffff);
+}
+
+
+/**
+ * Takes a computed ryzom time array and returns a SimpleXMLElement
+ */
+function ryzom_time_xml($rytime) {
+ global $tick_cache_timeout;
+ $out = ryzom_time_xml_without_cache($rytime);
+ $filename = RYAPI_URL.'data/cache/game_cycle.ticks';
+ $cache = $out->addChild('cache');
+ $cache->addAttribute('created', filemtime($filename));
+ $cache->addAttribute('expire', (filemtime($filename)+$tick_cache_timeout));
+ return $out;
+}
+
+?>
\ No newline at end of file
diff --git a/code/web/api/common/actionPage.php b/code/web/api/common/actionPage.php
new file mode 100644
index 000000000..735a33f32
--- /dev/null
+++ b/code/web/api/common/actionPage.php
@@ -0,0 +1,161 @@
+.
+ */
+
+class ryActionClass {
+ public $classname;
+ public $instance;
+ public $args;
+ public $requires;
+
+ function __construct($classname, $instance, $args, $requires) {
+ $this->classname = $classname;
+ $this->instance = $instance;
+ $this->args = $args;
+ $this->requires = $requires;
+ }
+
+}
+
+class ryActionPage {
+
+ private static $classesArgs = array();
+ private static $myClasses = array();
+ private static $aliases = array();
+ private static $messages;
+ private static $haveMessage;
+ protected static $id;
+
+ public $instanceName;
+ public $myMethods = array();
+
+ function __construct() {
+ }
+
+ function addMethods($child_class) {
+ if (is_array($child_class)) {
+ foreach ($child_class as $c_class)
+ $this->myMethods = array_merge($this->myMethods, get_class_methods($c_class));
+ } else {
+ $this->myMethods = get_class_methods($child_class);
+ }
+ }
+
+ static function addClass($name, $classname, $args=array(), $requires=NULL) {
+ self::$myClasses[$name] = new ryActionClass($classname, NULL, $args, $requires);
+ }
+
+ static function addAlias($aliasname, $name) {
+ self::$aliases[$aliasname] = $name;
+ }
+
+ static function initInstance($listener) {
+ $i = self::$myClasses[$listener];
+ if (!$i->instance) {
+ // requires
+ if ($i->requires) {
+ self::initInstance($i->requires);
+ }
+ if ($i->args)
+ $i->instance = new $i->classname($listener, $i->args);
+ else
+ $i->instance = new $i->classname($listener);
+ $i->instance->addMethods($i->classname);
+ $i->instance->instanceName = $listener;
+
+ }
+ return $i->instance;
+ }
+
+ static function getInstance($listener) {
+ return self::initInstance($listener);
+ }
+
+ static function _addMSG($type='OK', $message='') {
+ self::$messages[] = array($type, $message);
+ return '';
+ }
+
+ function addMSG($type='OK', $action='', $message='') {
+ self::$messages[] = array($type, $message);
+ $this->haveMessage = $action;
+ return '';
+ }
+
+ static function getMSGs() {
+ return self::$messages;
+ }
+
+ static function call($action, $url_params) {
+ $action_params = explode('_', $action);
+
+ if (count($action_params) != 2)
+ return self::_addMSG('ERR', 'Action call error : bad params of ['.$action.']');
+
+ list($listener, $call) = $action_params;
+ if (array_key_exists($listener,self::$aliases))
+ $listener = self::$aliases[$listener];
+
+ if (!array_key_exists($listener, self::$myClasses))
+ return self::_addMSG('ERR', 'Action call error : class ['. $listener .'] not found');
+
+ $i = self::initInstance($listener);
+
+ if (in_array('action'.$call, $i->myMethods)) {
+ $i->haveMessage = NULL;
+ $ret = call_user_func(array($i, 'action'.$call), $url_params);
+ if (!isset($_SESSION['last_action']) or $action != $_SESSION['last_action'])
+ $_SESSION['last_action'] = $action;
+ $msg = $i->haveMessage;
+ if ($msg and ($msg != $action)) {
+ $ret = self::call($msg, $url_params);
+ return self::_addMSG('OK', $ret);
+ }
+ return self::_addMSG('OK', $ret);
+ } else
+ return self::_addMSG('ERR', 'Action call error : action ['. $call .'] of ['. $listener .'] not found');
+ }
+}
+
+function callAction($action) {
+ $c = '';
+ ryActionPage::call($action, ryzom_get_params());
+ $msgs = ryActionPage::getMSGs();
+
+ foreach ($msgs as $msg) {
+ if ($msg[0] == 'HEADER')
+ $c .= $msg[1];
+ }
+
+ foreach ($msgs as $msg) {
+ if ($msg[0] == 'ERR')
+ $c .= _s('message error', $msg[1]);
+ else if ($msg[0] == 'MSG')
+ $c .= _s('message', $msg[1]);
+ else if ($msg[0] == 'WARNING')
+ $c .= _s('message warning', $msg[1]);
+ else if ($msg[0] != 'HEADER')
+ $c .= $msg[1];
+ }
+ return $c;
+}
+
+
+
+
+?>
diff --git a/code/web/api/common/auth.php b/code/web/api/common/auth.php
index 1d52c5d8e..3f06d28d5 100644
--- a/code/web/api/common/auth.php
+++ b/code/web/api/common/auth.php
@@ -1,37 +1,94 @@
.
+ */
+
+
+function ryzom_app_authenticate(&$user, $ask_login=true, $welcome_message='', $webprivs=true) {
$name = ryzom_get_param('name');
- $authserver = ryzom_get_param('authserver');
- $authkey = ryzom_get_param('authkey');
+ $urluser = ryzom_get_param('user'); // user serialization send by auth server
+ $urlusercheksum = ryzom_get_param('checksum'); // user serialization checksum
+ $authkey = ryzom_get_param('authkey'); // InGame authkey
$lang = ryzom_get_param('lang');
- $cid = ryzom_get_param('cid', '');
- $is_ingame = false;
+ $cid = intval(ryzom_get_param('cid'));
+ $is_auth_ingame = false;
// we have to set the $user['lang'] even for anonymous user or we cannot display the test in the right langage
if($lang == '') {
- $l = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
- if($l=='fr'||$l=='en'||$l=='de'||$l=='ru'||$l=='es')
+ $l = isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])?substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2):'en';
+ if ($l=='fr'||$l=='en'||$l=='de'||$l=='ru'||$l=='es')
$lang = $l;
else
$lang = 'en';
}
+ if ($lang!='fr'&&$lang!='en'&&$lang!='de'&&$lang!='ru'&&$lang!='es')
+ $lang = 'en';
+
$user['message'] = '';
$user['lang'] = $lang;
- $user['ig'] = false;
-
- if ((isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], 'Ryzom')) || ryzom_get_param('ig')) {
+ $user['groups'] = array();
+
+ if ((isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], 'Ryzom')) || ryzom_get_param('ig'))
$user['ig'] = true;
+ else
+ $user['ig'] = false;
+
+ if (isset($_SESSION['user'])) {
+ if (ryzom_get_param('action') == 'logout')
+ unset($_SESSION['user']);
+ else {
+ $_SESSION['user']['ig'] = $user['ig'];
+ define('RYZOM_IG', $user['ig']);
+ $user = $_SESSION['user'];
+ return true;
+ }
+ }
+
+ if ($urluser && $urlusercheksum) {
+ // Check $authuser (used to test app from another server ingame)
+ if (hash_hmac('sha1', $urluser, RYAPI_AUTH_KEY) == $urlusercheksum) {
+ $ig = $user['ig'];
+ $user = array_merge($user, unserialize(base64_decode($urluser)));
+ $user['ig'] = $ig;
+ if (!isset($user['groups']))
+ $user['groups'] = array();
+ define('RYZOM_IG', $user['ig']);
+ $_SESSION['user'] = $user;
+ return true;
+ }
+ }
+
+ if ($user['ig']) {
// Ingame
$shardid = ryzom_get_param('shardid');
- if (!ryzom_authenticate_ingame($shardid, $cid, $name, $authkey))
- return false;
- $is_ingame = true;
+ $error_message = '';
+ if (ryzom_authenticate_ingame($shardid, $cid, $name, $authkey) || ryzom_authenticate_with_session($name, $cid, $error_message)) {
+ $is_auth_ingame = true;
+ }
} else {
- // Outgame : Use session
+ // Outgame or bad ingame auth (external server) : Use session
$error_message = '';
if (!ryzom_authenticate_with_session($name, $cid, $error_message)) {
+ define('RYZOM_IG', false);
if ($ask_login) {
- $c = '';
+
+ if ($error_message)
+ $c = '
'._t($error_message).'
';
+ else
+ $c = '';
if (!$welcome_message)
$welcome_message = 'The application '._t(APP_NAME).' require authentication. Please enter your credentials';
@@ -47,18 +104,40 @@ function ryzom_app_authenticate(&$user, $ask_login=true, $welcome_message='') {
}
}
- if ($lang)
- $_SESSION['lang'] = $lang;
+ $_SESSION['lang'] = $lang;
+ define('RYZOM_IG', $user['ig']);
// get user informations
- $user = ryzom_user_get_info($cid);
- $user['lang'] = $_SESSION['lang'];
+ $ig = $user['ig'];
+ $user = ryzom_user_get_info($cid, $webprivs);
+
if (isset($user['creation_date']))
- $user['id'] = ryzom_get_user_id($cid, $user['char_name'], $user['creation_date']);
- if ($is_ingame && $user['last_played_date'] != '0')
- $user['ig'] = true;
+ $user['id'] = ryzom_get_user_id($cid, $user['char_name'], $user['creation_date'], $user);
+
+ $user['ig'] = $ig;
+ $user['lang'] = $_SESSION['lang'];
+ if (!isset($user['groups']))
+ $user['groups'] = array();
+
+ if ($is_auth_ingame && $user['last_played_date'] != '0')
+ $user['auth_ig'] = true;
else
- $user['ig'] = false;
+ $user['auth_ig'] = false;
+
+ if (!isset($_SESSION['translater_mode']) || ryzom_get_param('translate_this') == '0')
+ $_SESSION['translater_mode'] = false;
+
+ // Set/unset translation mode
+ if (in_array('WTRS', $user['groups']) && ryzom_get_param('translate_this') == '1')
+ $_SESSION['translater_mode'] = true;
+
+ $user['translation_mode'] = $_SESSION['translater_mode'];
+
+ ryzom_unset_url_param('translate_this');
+
+ if (isset($user['last_played_date']))
+ $_SESSION['last_played_date'] = $user['last_played_date'];
+ // don't send this informations to external apps
unset($user['last_played_date']);
unset($user['creation_date']);
return true;
diff --git a/code/web/api/common/bbCode.php b/code/web/api/common/bbCode.php
new file mode 100644
index 000000000..e45dfadb9
--- /dev/null
+++ b/code/web/api/common/bbCode.php
@@ -0,0 +1,988 @@
+.
+ */
+
+// setup bbCode formatter
+
+bbCode::$ig = RYZOM_IG;
+
+/**
+ * Image proxy
+ */
+if(!defined('IMG_PROXY')){
+ $url = 'http://'.$_SERVER['HTTP_HOST'].'/app_forum/tools/imageproxy.php';
+ define('IMG_PROXY', $url);
+}
+if (!function_exists('proxy_image_url')) {
+ function proxy_image_url($href, $attrs=''){
+ return IMG_PROXY.'?'.($attrs != '' ? $attrs.'&' : '').'url='.urlencode($href);
+ }
+}
+
+
+abstract class bbCodeParser {
+
+ /**
+ * @var bool
+ */
+ private $_ig;
+
+ /**
+ * @var array
+ */
+ private $tags_ignore;
+ private $tags_block_open;
+ private $tags_block_close;
+ private $tags_ignore_depth;
+
+ /**
+ * @var array
+ */
+ private $open_tags;
+
+ /**
+ * @var string
+ */
+ private $last_closed_tag;
+
+ /**
+ * @var int
+ */
+ private $current_tag;
+
+ /**
+ * @var array
+ */
+ private $state;
+
+ /**
+ * @param bool $ig if true, use ingame markup
+ */
+ function __construct($ig) {
+ $this->_ig = $ig;
+
+ // ignore bbcode between these tags
+ $this->tags_ignore = array(
+ 'noparse', 'code',
+ 'url', 'img', 'mail', 'page', 'forum', 'topic', 'post', 'wiki', 'time', 'date'
+ );
+
+ // these create block level html code, so '\n' or ' ' or '\t' around them needs to be cleared
+ $this->tags_block_open = array('h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'quote', 'list', 'p');
+ $this->tags_block_close = $this->tags_block_open;
+ if ($this->_ig) {
+ // ingame is not block level when closing, so dont strip there
+ $key = array_search('p', $this->tags_block_close, true);
+ unset($this->tags_block_close[$key]);
+ }
+
+ $this->state = array();
+
+ // reset internals
+ $this->reset();
+ }
+
+ /**
+ * Format bbcode tag
+ *
+ * @param string $tag tag name
+ * @param string $open open markup
+ * @param string $close close markup
+ * @param string $attr tag attributes
+ * @param string $text text between tags
+ */
+ abstract function format($tag, $open, $close, $attr, $text);
+
+ /**
+ * Wrapper to call Child->format(...)
+ *
+ * @param array $tag assoc array with tag info
+ * @return string
+ */
+ function handle_tag($tag) {
+ return $this->format($tag['tag'], $tag['open'], $tag['close'], $tag['attr'], $tag['text']);
+ }
+
+ /**
+ * Reset internals
+ */
+ function reset() {
+ $this->current_tag = 0;
+ $this->tags_ignore_depth = 0;
+
+ // 0'th position is used as result
+ $this->open_tags = array(
+ 0 => array('tag' => '', 'open' => '', 'close' => '', 'attr' => '', 'text' => '')
+ );
+
+ $this->last_closed_tag = false;
+ }
+
+ /**
+ * Save working state
+ */
+ private function _state_save() {
+ $this->state[] = array($this->current_tag, $this->tags_ignore_depth, $this->open_tags, $this->last_closed_tag);
+ $this->reset();
+ }
+
+ /**
+ * Restore working state
+ */
+ private function _state_restore() {
+ if (!empty($this->state)) {
+ list($this->current_tag, $this->tags_ignore_depth, $this->open_tags, $this->last_closed_tag) = array_pop($this->state);
+ }
+ }
+
+ /**
+ * Main worker. Parse $text for bbCode tags
+ *
+ * NOTE: Text must already be safe for HTML, ie. treated with htmlspecialchars()
+ *
+ * @param string $text
+ * @return string formatted string
+ */
+ function bbcode($text) {
+ $text = str_replace("\r\n", "\n", $text);
+
+ $split = preg_split('/(\[[a-zA-Z0-9_\/]*?(?:[= ].*?)?\])/', $text, null, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
+
+ foreach ($split as $chunk) {
+ if (substr($chunk, 0, 1) == '[' && substr($chunk, -1, 1) == ']') {
+ if (substr($chunk, 0, 2) == '[/') {
+ $this->close($chunk);
+ } else {
+ $this->open($chunk);
+ }
+ } else {
+ $this->text($chunk);
+ }
+ }
+
+ return $this->result();
+ }
+
+ /**
+ * Push tag with args to stack
+ * Do not strip whitespace because tag might be invalid
+ *
+ * @param string $chunk full tag string, eg. [tag=attr]
+ */
+ function open($chunk) {
+ list($tag, $attr) = $this->split_params($chunk);
+
+ // test for [noparse]
+ if ($this->tags_ignore_depth > 0) {
+ $this->text($chunk);
+ } else {
+ $this->current_tag++;
+ // remember tag, attributes and complete string that was used in markup
+ $this->open_tags[$this->current_tag] = array('tag' => $tag, 'attr' => $attr, 'open' => $chunk, 'close' => '', 'text' => '');
+ }
+
+ if (in_array($tag, $this->tags_ignore)) {
+ $this->tags_ignore_depth++;
+ }
+ }
+
+ /**
+ * Close tag and call tag handler to format output
+ *
+ * @param $chunk full tag string, eg. [/tag]
+ */
+ function close($chunk) {
+ // extract tag name from [/name]
+ $tag = strtolower(substr($chunk, 2, -1));
+
+ if ($this->tags_ignore_depth > 0 && in_array($tag, $this->tags_ignore)) {
+ $this->tags_ignore_depth--;
+ }
+
+ // stack underrun
+ if ($this->current_tag < 0) {
+ $this->text($chunk);
+ return;
+ }
+
+ // ignore block
+ if ($this->tags_ignore_depth > 0) {
+ $this->text($chunk);
+ return;
+ }
+
+ // tag mismatch
+ if ($this->open_tags[$this->current_tag]['tag'] !== $tag) {
+ // try to find first open tag for this
+ $key = false;
+ for ($i = $this->current_tag - 1; $i > 0; $i--) {
+ if (isset($this->open_tags[$i]['tag']) && $this->open_tags[$i]['tag'] === $tag) {
+ $key = $i;
+ break;
+ }
+ }
+ if ($key === false) {
+ $this->text($chunk);
+ return;
+ }
+
+ // tag is open so we need to 'rewind' a bit
+ for ($i = $this->current_tag; $i > $key; $i--) {
+ $tmp_tag = $this->pop_stack();
+ $this->text($tmp_tag['open'] . $tmp_tag['text']);
+ }
+ }
+
+ // close tag
+ $open = $this->pop_stack();
+
+ // handle bbcode
+ $open['close'] = $chunk;
+
+ $block_level = false;
+ if (in_array($tag, $this->tags_block_open)) {
+ $block_level = true;
+ // for block level element, trim whitespace from inside tag
+ // [tag]...text...[/tag]
+ $open['text'] = $this->trim_ws($open['text']);
+ }
+ $result = $this->handle_tag($open);
+
+ // strip whitespace from text before tag 'text...[tag]'
+ if ($block_level) {
+ $ts = $this->rtrim_ws($this->open_tags[$this->current_tag]['text']);
+ $this->open_tags[$this->current_tag]['text'] = $ts;
+ }
+
+ $this->text($result);
+
+ $this->last_closed_tag = $open['tag'];
+ }
+
+ function text($text) {
+ // strip whitespace after closing '[/tag]...text'
+ if (in_array($this->last_closed_tag, $this->tags_block_close)) {
+ $text = $this->ltrim_ws($text);
+ }
+ $this->open_tags[$this->current_tag]['text'] .= $text;
+
+ $this->last_closed_tag = false;
+ }
+
+ function result() {
+ // close tags that are still open
+ while ($this->current_tag > 0) {
+ $open = $this->pop_stack();
+
+ if ($this->tags_ignore_depth > 0) {
+ $this->tags_ignore_depth--;
+ // need to reparse text that's after ignore tag
+ $this->_state_save();
+ $text = $open['open'] . $this->bbcode($open['text']);
+ $this->_state_restore();
+ } else {
+ // tag was not closed proprely, include start tag with result
+ $text = $open['open'] . $open['text'];
+ }
+
+ $this->text($text);
+ };
+
+ return $this->open_tags[0]['text'];
+ }
+
+ /**
+ * Pop tag and text from stack and return them
+ *
+ * @return array [0] = tag, [1] = text
+ */
+ function pop_stack() {
+ // remove from stack
+ $open = $this->open_tags[$this->current_tag];
+ unset($this->open_tags[$this->current_tag]);
+ $this->current_tag--;
+
+ return $open;
+ }
+
+ /**
+ * Trim from end of string
+ * 'text...\s{0,}\n{1}\s{0,}'
+ *
+ * @param string $ts
+ * @return string
+ */
+ function rtrim_ws($ts){
+ // we want to get rid of all spaces/tabs, but only single \n, so rtrim($ts, " \t\n\r") would not work
+ $ts = rtrim($ts, " \t");
+ if (substr($ts, -1, 1) === "\n") {
+ $ts = substr($ts, 0, -1);
+ $ts = rtrim($ts, " \t");
+ }
+ return $ts;
+ }
+
+ /**
+ * Trim from start of string
+ * '\s{0,}\n{1}...text'
+ *
+ * @param string $ts
+ * @return string
+ */
+ function ltrim_ws($ts){
+ // we want to get rid of all spaces/tabs, but only single \n, so ltrim($ts, " \t\n\r") would not work
+ $ts = ltrim($ts, " \t");
+ if (substr($ts, 0, 1) === "\n") {
+ $ts = substr($ts, 1);
+ }
+ return $ts;
+ }
+
+ /**
+ * Trim from both sides
+ * '\s{0,}\n{1}...text...\s{0,}\n{1}\s{0,}
+ *
+ * @param string $ts
+ * @return string
+ */
+ function trim_ws($ts){
+ $ts = $this->ltrim_ws($ts);
+ $ts = $this->rtrim_ws($ts);
+ return $ts;
+ }
+
+ /**
+ * Extract tag parameters from [tag=params] or [tag key1=val1 key2=val2]
+ *
+ * @param type $tag
+ * @return type
+ */
+ function split_params($chunk) {
+ if (substr($chunk, 0, 1) == '[') {
+ $b = '\[';
+ $e = '\]';
+ } else {
+ $b = '';
+ $e = '';
+ }
+ // [1] [2] [3]
+ if (preg_match('/^' . $b . '([\*a-zA-Z0-9]*?)' . '(=| )' . '(.*?)' . $e . '$/', $chunk, $match)) {
+ $tagName = strtolower($match[1]);
+ if ($match[2] == '=') {
+ // = means single parameter
+ $tagParam = $match[3];
+ } else {
+ // means multiple parameters
+ $tagParam = array();
+ $args = preg_split('/[ ]/', $match[3], null, PREG_SPLIT_NO_EMPTY);
+ foreach ($args as $arg) {
+ $pairs = explode('=', $arg);
+ // preg_replace will remove possible quotes around value
+ if (isset($pairs[1])) {
+ $tagParam[strtolower($pairs[0])] = preg_replace('@("|\'|)(.*?)\\1@', '$2', $pairs[1]);
+ } else {
+ $tagParam[] = preg_replace('@("|\'|)(.*?)\\1@', '$2', $pairs[0]);
+ }
+ }
+ }
+ } else {
+ if (substr($chunk, 0, 1) == '[' && substr($chunk, -1, 1) == ']') {
+ $chunk = substr($chunk, 1, -1);
+ }
+ $tagName = strtolower($chunk);
+ $tagParam = '';
+ }
+ return array($tagName, $tagParam);
+ }
+
+}
+
+class bbCode extends bbCodeParser {
+ static $legacy_sync = 1348956841;
+ static $legacy_shard = array(
+ 'ani' => 2363920179,
+ 'lea' => 2437578274,
+ 'ari' => 2358620001,
+ );
+
+ static $ig = false;
+ static $timezone = 'UTC';
+ static $clock12h = false;
+ static $shardid = false;
+ static $lang = 'en';
+ static $disabledTags = array();
+ //
+ const COLOR_P = '#d0d0d0'; // normal text
+ //
+ const COLOR_BBCODE_TAG = '#444444';
+
+ static function bbDisabled($tag) {
+ return in_array(strtolower($tag), self::$disabledTags);
+ }
+
+ static function getFontSize($value) {
+ $size = 16;
+ switch (strtolower($value)) {
+ case '1': case 'xx-small': $size = 9; break;
+ case '2': case 'x-small' : $size = 10; break;
+ case '3': case 'small' : $size = 13; break;
+ case '4': case 'medium' : $size = 16; break;
+ case '5': case 'large' : $size = 18; break;
+ case '6': case 'x-large' : $size = 24; break;
+ case '7': case 'xx-large': $size = 32; break;
+ //case '8': case 'smaller' : break;
+ //case '9': case 'larger' : break;
+ }
+ return $size;
+ }
+
+ static function bb_noparse($code) {
+ return preg_replace(array('/\[/', '/\]/'), array('[', ']'), $code);
+ }
+
+ static function bb_code($code) {
+ return '' . self::bb_noparse($code) . '
';
+ }
+
+ static function bb_list($list) {
+ $result = '';
+ $list = str_replace("\n[", '[', $list);
+ $result = '' . preg_replace('/\s*\[\*\]\s*/is', "- ", $list) . '
';
+ return preg_replace('#\s*#is', '', $result);
+ }
+
+ static function bb_quote($author, $text) {
+ if (self::$ig) {
+ // prevents [color] tag to take over color
+ $author = self::bb_color(self::COLOR_P, $author);
+ $text = self::bb_color(self::COLOR_P, $text);
+ // left/right border, top/bottom border height
+ $l = ' | ';
+ $r = ' | ';
+ return // 98% gives bit padding on the right
+ '' .
+ ' | | |
' . // top padding - no border
+ '' . $l . ' | ' . $r . '
' . // top border
+ '' . $l . ' | ' . $r . '
' . // author top padding
+ '' . $l . '' . $author . ' | ' . $r . '
' . // author
+ '' . $l . ' | ' . $r . '
' . // author bottom padding
+ '' . $l . ' | ' . $r . '
' . // quote top padding
+ '' . $l . '' . $text . ' | ' . $r . '
' . // quote
+ '' . $l . ' | ' . $r . '
' . // quote bottom padding
+ '' . $l . ' | ' . $r . '
' . // bottom border
+ ' | | |
' . // bottom padding - no border
+ '
';
+ } else {
+ return '' .
+ '' .
+ '
' . $author . '' .
+ '
' . $text . '
' .
+ '
';
+ }
+ }
+
+ static function bb_h($nr, $color, $text) {
+ $tag = 'h' . $nr;
+
+ if (self::$ig) {
+ if ($color != '') {
+ $text = '' . $text . '';
+ }
+ return '<' . $tag . '>' . $text . '' . $tag . '>';
+ } else {
+ if ($color != '') {
+ $style = ' style="color: ' . $color . ';"';
+ } else {
+ $style = '';
+ }
+ return '<' . $tag . $style . '>' . $text . '' . $tag . '>';
+ }
+ }
+
+ static function bb_url($href, $text) {
+ // "http://..../" remove " if present
+ if (substr($href, 0, 6) == '"') {
+ if (substr($href, -6) == '"') {
+ $href = substr($href, 6, -6);
+ } else {
+ $href = substr($href, 6);
+ }
+ }
+
+ if ($href == '')
+ $href = $text;
+ if ($text == '') {
+ $text = $href;
+ $text = wordwrap($text, 65, ' ', true);
+ }
+
+ $disable = self::bbDisabled('url');
+ // if not disabled and in ryzom and is proper url (:///)
+ if (!$disable && self::$ig) {
+ $url = @parse_url(strtolower($href));
+ $disable = true;
+ if (!empty($url['scheme']) && !empty($url['host'])) {
+ if (in_array($url['scheme'], array('http', 'https'))) {
+ if (in_array($url['host'], array('app.ryzom.com'))) {
+ if (empty($url['query']) || stripos($url['query'], 'redirect') === false) {
+ // http://atys.ryzom.com/
+ // and does not contain redirect
+ // - allow url in game browser
+ $disable = false;
+ }
+ }
+ }
+ } // !empty
+ }// isRYZOM
+
+ if ($disable) {
+ // empty href will give proper link color without 'underline' - perfect for 'disabled' links
+ if ($href == '') {
+ $text = '' . $text . '';
+ } else {
+ $href = wordwrap($href, 65, ' ', true);
+ $text = wordwrap($text, 65, ' ', true);
+ $text = '' . $text . ' ' . self::bb_color(self::COLOR_BBCODE_TAG, '(' . $href . ')');
+ }
+ return $text;
+ }
+
+ // make sure http:// (or ftp:// or mailto:// etc is present), if not, add it
+ if (!preg_match('#://#', $href)) {
+ $href = 'http://' . $href;
+ }
+
+ return sprintf('%s', $href, $text);
+ }
+
+ static function bb_img($attr, $href) {
+ if (self::bbDisabled('img')) {
+ return self::bb_noparse('[img]' . $href . '[/img]');
+ }
+ // $href is treated with htmlspecialchars() so any & in url is &
+ $href = str_replace('&', '&', $href);
+
+ // images from current server directly
+ if ($attr=='src' || strstr($href, $_SERVER['HTTP_HOST']) !== false){
+ return '';
+ }
+ $url = proxy_image_url($href);
+ return '';
+ }
+
+ static function bb_banner($lang, $ckey) {
+ // $lang and $ckey should already be escaped for HTML, so urlencode() in here would double escape them
+ // - channel it thru image proxy. proxy does caching better and uses '304 Not Modified' status
+ $src = 'http://atys.ryzom.com/api/banner.php?ckey=' . $ckey . '&langid=' . $lang . '&size=500';
+ return self::bb_img('', $src);
+ }
+
+ static function bb_mail($user) {
+ $url = 'http://' . $_SERVER['HTTP_HOST'] . '/app_mail/?page=compose/to/' . urlencode($user);
+ return '' . $user . '';
+ }
+
+ static function bb_profile($ptype, $pname) {
+ // types from app_profile
+ $types = array('user', 'player', 'npc', 'fauna', 'entity', 'source');
+ $ptype = array_search($ptype, $types, true);
+ // if type not found, then fall back to player
+ if ($ptype === false)
+ $ptype = 1;
+
+ $url = 'http://' . $_SERVER['HTTP_HOST'] . '/app_profile/?ptype=' . intval($ptype) . '&pname=' . urlencode($pname);
+ return '' . $pname . '';
+ }
+
+ static function bb_color($color, $str) {
+ if ($color == '') {
+ return $str;
+ }
+
+ if (self::$ig) {
+ return '' . $str . '';
+ } else {
+ return '' . $str . '';
+ }
+ }
+
+ static function bb_size($size, $str) {
+ $size = self::getFontSize($size);
+
+ if (self::$ig) {
+ return '' . $str . '';
+ } else {
+ return '' . $str . '';
+ }
+ }
+
+ static function bb_pre($str) {
+ return '' . $str . '
';
+ }
+
+ static function bb_p($str) {
+ return '' . $str . '
';
+ }
+
+ // Added by ulukyn. WebIg compatibility.
+ static function bb_center($str) {
+ if (self::$ig) {
+ return '';
+ } else {
+ return '' . $str . '
';
+ }
+ }
+
+ /** Table format : (added by ulukyn)
+ * A1| A2|A3
+ * B1| B2 |B3
+ * C1|C2 |C3
+ */
+ static function bb_table($attr, $content) {
+ $width = isset($attr['width'])?$attr['width']:'100%';
+ $border = isset($attr['border'])?$attr['border']:'0';
+ $bgcolor = isset($attr['bgcolor'])?' bgcolor="'.$attr['bgcolor'].'" ':'';
+ $ret = '';
+ $lines = explode("\n", $content);
+ foreach ($lines as $line) {
+ if ($line) {
+ $ret .= '';
+ $cols = explode('|', $line);
+ foreach ($cols as $text) {
+ if (!$text)
+ continue;
+ $params = array('valign' => 'middle');
+ if ($text[0] == '#') {
+ $paramsdef = explode(' ', $text);
+ $paramlist = substr(array_shift($paramsdef), 1);
+ $paramlist = explode(',', $paramlist);
+ foreach ($paramlist as $p) {
+ list($name, $value) = explode('=', $p);
+ $params[ _h(str_replace('"', '', $name))] = _h(str_replace('"', '', $value));
+ }
+ if ($paramsdef)
+ $text = implode(' ', $paramsdef);
+ }
+ $param_html = '';
+ foreach ($params as $name => $value)
+ $param_html .= $name.'="'.$value.'" ';
+
+ if ($text && $text[0] == ' ' && $text[strlen($text)-1] == ' ')
+ $align = 'center';
+ else if ($text && $text[0] == ' ')
+ $align = 'right';
+ else
+ $align = 'left';
+
+ $ret .= ''.$text.' | ';
+ }
+ $ret .= '
';
+ }
+ }
+
+ $ret .= '
';
+ return $ret;
+ }
+
+
+ static function bb_page_link($page, $txt) {
+ if ($page == '') {
+ $page = $txt;
+ }
+ $tmp = explode('/', $page);
+ foreach ($tmp as $k => $v) {
+ $tmp[$k] = urlencode($v);
+ }
+ $url = 'http://' . $_SERVER['HTTP_HOST'] . '/app_forum/?page=' . join('/', $tmp);
+ return '' . $txt . '';
+ }
+
+ static function bb_forum_link($page, $id, $txt) {
+ $page = $page . '/view/' . $id;
+ if ($id == '') {
+ $page.= $txt;
+ }
+ return self::bb_page_link($page, $txt);
+ }
+
+ // Added by Ulukyn
+ static function bb_wiki_link($page, $txt) {
+ $need_new_txt = false;
+ if ($page == '') {
+ $page = $txt;
+ $need_new_txt = true;
+ }
+
+ if (substr($page, 0, 22) == 'http://atys.ryzom.com/')
+ $url = 'http://atys.ryzom.com/start/app_wiki.php?page=' . substr($page, 21);
+ else {
+ $tmp = explode('/', $page);
+ if (count($tmp) != 2) {
+ return 'Syntax: [wiki]/[page], ex: en/Chronicles';
+ } else {
+ $wiki = $tmp[0];
+ $page = $tmp[1];
+ }
+ if (self::$ig) {
+ $url = 'http://atys.ryzom.com/start/app_wiki.php?page=/projects/pub' . $wiki . '/wiki/' . $page;
+ }
+ else
+ $url = 'http://atys.ryzom.com/projects/pub' . $wiki . '/wiki/' . $page;
+ if ($need_new_txt)
+ $txt = 'WIKI [' . $page . ']';
+ }
+ return '' . $txt . '';
+ }
+
+ static function bb_biu($tag, $txt) {
+ $tag = strtolower($tag);
+ if (self::$ig) {
+ switch ($tag) {
+ // FIXME: darken/lighter or tint current color
+ case 'b': $txt = self::bb_color('white', $txt);
+ break;
+ case 'i': $txt = self::bb_color('#ffffd0', $txt);
+ break;
+ case 'u': $txt = '' . self::bb_color(self::COLOR_P, $txt) . '';
+ break;
+ default : $txt = self::bb_color(self::COLOR_BBCODE_TAG, $txt);
+ break; // fallback
+ }
+ return $txt;
+ }
+
+ switch ($tag) {
+ case 'b': $tag = 'strong';
+ break;
+ case 'i': $tag = 'em';
+ break;
+ case 'u': $tag = 'u';
+ break;
+ default: $tag = 'span'; // fallback
+ }
+ return '<' . $tag . '>' . $txt . '' . $tag . '>';
+ }
+
+ static function bb_date($attr, $txt) {
+ $time = strtotime($txt);
+
+ $shardid = isset($attr['shard']) ? $attr['shard'] : self::$shardid;
+ if ($time === false || $shardid === false)
+ return 'ERR:[' . $txt . ']';
+
+ if (isset(self::$legacy_shard[$shardid])) {
+ $tick = self::$legacy_shard[$shardid];
+ if (self::$legacy_sync > $time) {
+ // only modify game cycle when asked time is before sync
+ $tick = ($time - self::$legacy_sync) * 10 + $tick;
+ }
+ } else {
+ $tick = ryzom_time_tick($shardid);
+ // tick is for NOW, adjust it to match time given
+ $now = time();
+ $tick = ($time - $now) * 10 + $tick;
+ }
+
+ $rytime = ryzom_time_array($tick, $shardid);
+ $txt = ryzom_time_txt($rytime, self::$lang);
+
+ return $txt;
+ }
+
+ static function bb_time($options, $txt) {
+ $time = strtotime($txt);
+
+ if ($time == 0) {
+ return $txt;
+ }
+
+ $timezone = self::$timezone;
+
+ $show_time = '';
+ $show_date = '';
+ $show_timer = '';
+
+ if (is_array($options)) {
+ foreach ($options as $key => $val) {
+ switch ($key) {
+ case 'timezone':
+ // fix some timezones for php
+ switch ($val) {
+ case 'pst': // fall thru
+ case 'pdt': $val = 'US/Pacific';
+ break;
+ }
+ $timezone = $val;
+ break;
+ case 'date' :
+ $show_date = $val == 'off' ? false : $val;
+ break;
+ case 'time' :
+ $show_time = $val == 'off' ? false : $val;
+ break;
+ case 'timer':
+ $show_timer = $val == 'off' ? false : $val;
+ break;
+ }//switch
+ }//foreach
+ }
+
+ $ret = array();
+
+ $old_timezone = date_default_timezone_get();
+ @date_default_timezone_set($timezone);
+ if ($show_date !== false) {
+ $date = ryzom_absolute_time($time);
+ //ryzom_absolute_time does not have year, so we need to add it
+ $current_y = date('Y', time());
+ $y = date('Y', $time);
+ if ($y != $current_y) {
+ $date.= ' ' . $y;
+ }
+ $ret[] = self::bb_color($show_date, $date);
+ }
+ if ($show_time !== false) {
+ $fmtTime = self::$clock12h ? 'g:i:s a T' : 'H:i:s T';
+ $ret[] = self::bb_color($show_time, date($fmtTime, $time));
+ }
+ date_default_timezone_set($old_timezone);
+
+ if ($show_timer !== false) {
+ if ($show_time === false && $show_date === false) {
+ $f = '%s';
+ } else {
+ $f = '(%s)';
+ }
+ $ret[] = self::bb_color($show_timer, sprintf($f, ryzom_relative_time($time)));
+ }
+
+ return join(' ', $ret);
+ }
+
+ /**
+ * This function is called by bbCodeParser class
+ *
+ * @see bbCodeParser::format
+ */
+ public function format($tag, $open, $close, $attr, $text) {
+ // silly functions all have different parameters
+ switch ($tag) {
+ case 'noparse' :
+ $result = self::bb_noparse($text);
+ break;
+ case 'code' :
+ $result = self::bb_code($text);
+ break;
+ case 'quote' :
+ $result = self::bb_quote($attr, $text);
+ break;
+ case 'h1' : // fall thru
+ case 'h2' : // fall thru
+ case 'h3' : // fall thru
+ case 'h4' : // fall thru
+ case 'h5' : // fall thru
+ case 'h6' :
+ $nr = (int) substr($tag, -1);
+ $color = isset($attr['color']) ? $attr['color'] : '';
+ $result = self::bb_h($nr, $color, $text);
+ break;
+ case 'color' :
+ $result = self::bb_color($attr, $text);
+ break;
+ case 'size' :
+ $result = self::bb_size($attr, $text);
+ break;
+ case 'list' :
+ $result = self::bb_list($text);
+ break;
+ case 'img' :
+ $result = self::bb_img($attr, $text);
+ break;
+ case 'banner' :
+ $result = self::bb_banner($attr, $text);
+ break;
+ case 'pre' :
+ $result = self::bb_pre($text);
+ break;
+ case 'p' :
+ $result = self::bb_p($text);
+ break;
+ case 'table' :
+ $result = self::bb_table($attr, $text);
+ break;
+ case 'center' :
+ $result = self::bb_center($text);
+ break;
+ case 'url' :
+ $result = self::bb_url($attr, $text);
+ break;
+ case 'mail' :
+ $result = self::bb_mail($text);
+ break;
+ case 'profile' :
+ $result = self::bb_profile($attr, $text);
+ break;
+ case 'page' :
+ $result = self::bb_page_link($attr, $text);
+ break;
+ case 'forum' : // fall thru
+ case 'topic' : // fall thru
+ case 'post' :
+ $result = self::bb_forum_link($tag, $attr, $text);
+ break;
+ case 'wiki' :
+ $result = self::bb_wiki_link($attr, $text);
+ break;
+ case 'b' : // fall thru
+ case 'i' : // fall thru
+ case 'u' :
+ $result = self::bb_biu($tag, $text);
+ break;
+ case 'time' :
+ $result = self::bb_time($attr, $text);
+ break;
+ case 'date' :
+ $result = self::bb_date($attr, $text);
+ break;
+ default :
+ $result = $open . $text . $close;
+ break;
+ }
+ return $result;
+ }
+
+ /**
+ * Replaces some BBcode with HTML code
+ *
+ * NOTE: $text should be already escaped for HTML
+ *
+ * @param string $text html escaped input text
+ * @param array $disabledTags
+ */
+ static function parse($text, $disabledTags = array()) {
+ static $parser = null;
+ if ($parser === null) {
+ $parser = new self(self::$ig);
+ }
+ $parser->reset();
+
+ self::$disabledTags = $disabledTags;
+ return $parser->bbcode($text);
+ }
+
+}
diff --git a/code/web/api/common/config.php.default b/code/web/api/common/config.php.default
index 3a00bb04e..35202ae29 100644
--- a/code/web/api/common/config.php.default
+++ b/code/web/api/common/config.php.default
@@ -17,6 +17,8 @@
* along with ryzom_api. If not, see .
*/
+ define('RYAPI_MODE', 'client');
+
// Url where the api is
define('RYAPI_URL', 'http://');
if (!defined('RYAPI_PATH'))
@@ -24,5 +26,6 @@ if (!defined('RYAPI_PATH'))
// used by "home" link
if (!defined('RYAPP_URL'))
define('RYAPP_URL', 'http://');
-
+if (!defined('RYAPI_AUTH_KEY'))
+ define('RYAPI_AUTH_KEY', ''); // key gived by AUTH_SERVER
?>
diff --git a/code/web/api/common/db_defs.php b/code/web/api/common/db_defs.php
new file mode 100644
index 000000000..e2d9536ab
--- /dev/null
+++ b/code/web/api/common/db_defs.php
@@ -0,0 +1,24 @@
+.
+ */
+
+// init database table used by webig
+$db = ryDB::getInstance('webig');
+$db->setDbDefs('players', array('id' => SQL_DEF_INT, 'cid' => SQL_DEF_INT, 'name' => SQL_DEF_TEXT, 'creation_date' => SQL_DEF_DATE, 'deleted' => SQL_DEF_BOOLEAN, 'last_login' => SQL_DEF_TEXT));
+$db->setDbDefs('accounts', array('uid' => SQL_DEF_INT, 'web_privs' => SQL_DEF_TEXT));
+
+?>
\ No newline at end of file
diff --git a/code/web/api/common/db_lib.php b/code/web/api/common/db_lib.php
index c3c7e8677..8d8dc936a 100644
--- a/code/web/api/common/db_lib.php
+++ b/code/web/api/common/db_lib.php
@@ -43,91 +43,96 @@ class ServerDatabase
}
if (($this->hostname != '') && ($this->username != '') && ($this->database != ''))
- {
- $this->_connection = mysql_connect($this->hostname, $this->username, $this->password)
- or die("ERR1"); // ace . $this->get_error());
- $this->select_db($this->database);
- }
+ $this->_connection = new mysqli($this->hostname, $this->username, $this->password, $this->database);
}
function close()
{
- @mysql_close($this->_connection);
+ $this->_connection->close();
}
function query($sql_statement)
{
- $result = mysql_query($sql_statement, $this->_connection);
+ $result = $this->_connection->query($sql_statement);
+ if (!$result)
+ alert('MYSQL', $this->get_error(), 2);
return $result;
}
function select_db($dbname) {
$this->database = $dbname;
- mysql_select_db($this->database, $this->_connection) or die("Database selection error : " . $this->get_error());
+ $this->_connection->select_db($dbname);
}
function num_rows($result)
{
- return @mysql_num_rows($result);
+ return $result->num_rows;
}
- function fetch_row($result, $result_type=MYSQL_BOTH)
+ function fetch_row($result, $result_type=MYSQLI_BOTH)
{
- return @mysql_fetch_array($result, $result_type);
- }
-
- function fetch_assoc($result)
- {
- return @mysql_fetch_array($result, MYSQL_ASSOC);
+ if (gettype($result) == "object")
+ return $result->fetch_array($result_type);
+ return NULL;
}
+ function fetch_assoc($result)
+ {
+ if (gettype($result) == "object")
+ return $result->fetch_assoc();
+ return NULL;
+ }
function query_single_row($sql_statement)
{
$result = $this->query($sql_statement);
- return @mysql_fetch_array($result);
+ if (gettype($result) == "object")
+ return $result->fetch_array();
+
+ return NULL;
}
function free_result($result)
{
- @mysql_free_result($result);
+ $result->free();
}
function get_error()
{
- return mysql_errno($this->_connection) .": ". mysql_error($this->_connection);
+ return $this->_connection->errno.': '.$this->_connection->error;
}
function last_insert_id()
{
- return @mysql_insert_id();
+ return $this->_connection->insert_id;
+ }
+
+ function escape_string($escapestr) {
+ return $this->_connection->real_escape_string($escapestr);
}
function change_to($host,$user,$pass,$dbname)
{
- $this->close();
+ /*$this->close();
$this->hostname = $host;
$this->username = $user;
$this->password = $pass;
$this->database = $dbname;
- $this->ServerDatabase();
+ $this->ServerDatabase();*/
}
}
-
-
-
class ryDB {
private static $_instances = array();
private $db;
private $defs = array();
private $errors = '';
-
-
+
+
private function __construct($db_name) {
global $_RYZOM_API_CONFIG;
-
+ $this->db_name = $db_name;
$this->db = new ServerDatabase(RYAPI_WEBDB_HOST, RYAPI_WEBDB_LOGIN, RYAPI_WEBDB_PASS, $db_name);
$this->db->query("SET NAMES utf8");
}
@@ -140,20 +145,41 @@ class ryDB {
return self::$_instances[$db_name];
}
- function setDbDefs($table, $defs) {
+ function setDbDefs($table, $defs, $check=true) {
+ if ($check)
+ {
+ $result = $this->db->query('SHOW FIELDS FROM '.$table);
+ if (!$result)
+ die("Table $table not found in database");
+
+ $fields = array_keys($defs);
+ while ($row = $this->db->fetch_row($result)) {
+ if (in_array($row['Field'], $fields))
+ unset($fields[array_search($row['Field'], $fields)]);
+ else
+ alert('DbLib', 'Missing field '.$row['Field']." on DbDef of table [$table] of database [$this->db_name] !", 2);
+ }
+ if ($fields)
+ die('Missing fields ['.implode('] [', $fields)."] in table [$table] of database [$this->db_name] !");
+ }
$this->defs[$table] = $defs;
}
-
+
function getDefs($table) {
- if (!array_key_exists($table, $this->defs))
- die("Please add tables defs using setDbDefs('$table', \$defs)");
- return $this->defs[$table];
+ if ($this->hasDbDefs($table))
+ return $this->defs[$table];
+
+ alert('DBLIB', "Please add tables to '$this->db_name' defs using setDbDefs('$table', \$defs)", 2);
}
-
+
+ function hasDbDefs($table) {
+ return array_key_exists($table, $this->defs);
+ }
+
function getErrors() {
return $this->db->get_error();
}
-
+
function now() {
return date('Y-m-d H:i:s', time());
}
@@ -169,18 +195,43 @@ class ryDB {
function addDbTableProp($table, $props) {
$this->props[$table] = $props;
}
-
+
+ function sqlEscape($escapestr) {
+ return $this->db->escape_string($escapestr);
+ }
+
+ function insertID() {
+ return $this->db->last_insert_id();
+ }
+
+
/// DIRECT QUERY
- function sqlQuery($sql) {
+ function sqlQuery($sql, $index = false, $result_type = MYSQLI_BOTH) {
$result = $this->db->query($sql);
+ if (!$result)
+ return NULL;
+ if($index !== false && !is_array($index)){
+ $index = array($index);
+ }
$ret = array();
- while ($row = $this->db->fetch_row($result)) {
- $ret[] = $row;
+ while ($row = $this->db->fetch_row($result, $result_type)) {
+ if($index !== false) {
+ // if $index is ['id1', 'id2'], then this code executes as
+ // $ret[$row['id1']][$row['id2']] = $row
+ $current = &$ret;
+ foreach($index as $key){
+ if(!isset($row[$key]))
+ alert('DBLIB', "Requested index field ($key) was not selected from db");
+ $current = &$current[$row[$key]];
+ }
+ $current = $row;
+ } else
+ $ret[] = $row;
}
return $ret;
}
-
-
+
+
/// QUERY ///
function sqlSelect($table, $props, $values=array(), $extra='') {
if ($table) {
@@ -188,16 +239,16 @@ class ryDB {
$params = array();
$test = array();
if (!$props)
- die("Bad Select on [$table] : missing props");
-
+ alert('DBLIB', "Bad Select on [$table] : missing props");
+
foreach($props as $name => $type)
- $params[] = '`'.addslashes($name).'`';
-
+ $params[] = '`'.$this->sqlEscape($name).'`';
+
foreach($values as $name => $value) {
if ($name[0] == '=')
- $test[] = '('.addslashes(substr($name, 1)).' LIKE '.var_export($value, true).')';
+ $test[] = '('.$this->sqlEscape(substr($name, 1)).' LIKE '.var_export($value, true).')';
else
- $test[] = '('.addslashes($name).' = '.var_export($value, true).')';
+ $test[] = '('.$this->sqlEscape($name).' = '.var_export($value, true).')';
}
$sql .= implode(",\n\t", $params)."\nFROM\n\t".$table."\n";
if ($test)
@@ -209,39 +260,37 @@ class ryDB {
return $sql.';';
}
-
+
function querySingle($table, $values=array(), $extra='') {
$sql = $this->sqlSelect($table, $this->getDefs($table), $values, $extra);
- $result = $this->db->query($sql);
- return $this->db->fetch_row($result);
+ $result = $this->sqlQuery($sql, false, MYSQLI_BOTH);
+ if(empty($result))
+ return NULL;
+ return $result[0];
}
-
+
function querySingleAssoc($table, $values=array(), $extra='') {
$sql = $this->sqlSelect($table, $this->getDefs($table), $values, $extra);
- $result = $this->db->query($sql);
- return $this->db->fetch_row($result, MYSQL_ASSOC);
+ $result = $this->sqlQuery($sql, false, MYSQLI_ASSOC);
+ if(empty($result))
+ return NULL;
+ return $result[0];
}
-
- function query($table, $values=array(), $extra='') {
+
+ function query($table, $values=array(), $extra='', $index = false, $result_type = MYSQLI_BOTH) {
$sql = $this->sqlSelect($table, $this->getDefs($table), $values, $extra);
- $result = $this->db->query($sql);
- $ret = array();
- while ($row = $this->db->fetch_row($result)) {
- $ret[] = $row;
- }
- return $ret;
+ return $this->sqlQuery($sql, $index, $result_type);
}
-
- function queryAssoc($table, $values=array(), $extra='') {
- $sql = $this->sqlSelect($table, $this->getDefs($table), $values, $extra);
- $result = $this->db->query($sql);
- $ret = array();
- while ($row = $this->db->fetch_row($result, MYSQL_ASSOC)) {
- $ret[] = $row;
- }
- return $ret;
+
+ function queryAssoc($table, $values=array(), $extra='', $index = false) {
+ return $this->query($table, $values, $extra, $index, MYSQLI_ASSOC);
}
+ function queryIndex($table, $index, $values=array(), $extra='') {
+ return $this->query($table, $values, $extra, $index, MYSQLI_ASSOC);
+ }
+
+
/// INSERT ///
function sqlInsert($table, $props, $vals) {
$sql = 'INSERT INTO '.$table.' ';
@@ -250,7 +299,7 @@ class ryDB {
foreach($props as $name => $type) {
if (!isset($vals[$name]))
continue;
- $params[] = $name;
+ $params[] = '`'.$name.'`';
switch ($type) {
case SQL_DEF_BOOLEAN:
$values[] = $vals[$name]?1:0;
@@ -260,12 +309,12 @@ class ryDB {
break;
case SQL_DEF_DATE: // date
if (is_string($vals[$name]))
- $values[] = "'".addslashes($vals[$name])."'";
+ $values[] = "'".$this->sqlEscape($vals[$name])."'";
else
$values[] = "'".$this->toDate($vals[$name])."'";
break;
default:
- $values[] = "'".addslashes($vals[$name])."'";
+ $values[] = "'".$this->sqlEscape($vals[$name])."'";
break;
}
}
@@ -284,8 +333,8 @@ class ryDB {
$sql = "DELETE FROM\n\t".$table."\n";
$test = array();
foreach($values as $name => $value)
- $test[] = '('.addslashes($name).' = '.var_export($value, true).')';
-
+ $test[] = '('.$this->sqlEscape($name).' = '.var_export($value, true).')';
+
if ($test or $where)
$sql .= "WHERE\n\t";
if ($test)
@@ -294,7 +343,7 @@ class ryDB {
$sql .= "\n".$where;
return $sql.';';
}
-
+
function delete($table, $values=array(), $where='') {
$sql = $this->sqlDelete($table, $values, $where);
$result = $this->db->query($sql);
@@ -316,23 +365,23 @@ class ryDB {
break;
case SQL_DEF_DATE:
if (is_string($vals[$name]))
- $values[] = '`'.$name.'` = \''.addslashes($vals[$name]).'\'';
+ $values[] = '`'.$name.'` = \''.$this->sqlEscape($vals[$name]).'\'';
else
$values[] = '`'.$name.'` = \''.$this->toDate($vals[$name]).'\'';
break;
default:
- $values[] = '`'.$name.'` = \''.addslashes($vals[$name]).'\'';
+ $values[] = '`'.$name.'` = \''.$this->sqlEscape($vals[$name]).'\'';
break;
}
}
$sql .= "\n\t".implode(",\n\t", $values)."\n";
foreach($tests as $name => $value) {
- $test[] = '('.addslashes($name).' = '.var_export($value, true).')';
+ $test[] = '('.$this->sqlEscape($name).' = '.var_export($value, true).')';
}
if ($test)
$sql .= "WHERE\n\t".implode("\nAND\n\t", $test);
-
+
$sql .= "\n".$extra;
return $sql;
@@ -363,17 +412,17 @@ class ryDB {
continue;
switch ($type) {
case 'trad':
- $values[] = '`'.$name."` = '".addslashes($vals[$name])."'";
+ $values[] = '`'.$name."` = '".$this->sqlEscape($vals[$name])."'";
break;
case 'textarea':
case 'string':
case 'option':
- $values[] = '`'.$name."` = '".addslashes($vals[$name])."'";
+ $values[] = '`'.$name."` = '".$this->sqlEscape($vals[$name])."'";
break;
case 'id':
case 'int':
case 'float':
- $values[] = '`'.$name.'` = '.addslashes($vals[$name]);
+ $values[] = '`'.$name.'` = '.$this->sqlEscape($vals[$name]);
break;
case 'bool':
$values[] = '`'.$name.'` = '.($vals[$name]?'1':'0');
@@ -389,7 +438,7 @@ class ryDB {
return $result;
}
-
+
/// Display
function getTableHtml($name, $params, $values, $order_by='')
{
@@ -417,6 +466,55 @@ class ryDB {
return $ret;
}
+ /// Update Database Structure
+
+ static function updateDatabaseStruct($defs)
+ {
+ if (file_exists(RYAPP_PATH.'database.versions'))
+ $versions = unserialize(file_get_contents(RYAPP_PATH.'database.versions'));
+ else
+ $versions = array();
+
+ $c = "Updating DB Structure...\n";
+ foreach ($defs as $dbname => $tables) {
+ $db = new ServerDatabase(RYAPI_WEBDB_HOST, RYAPI_WEBDB_LOGIN, RYAPI_WEBDB_PASS, $dbname);
+ $db->query("SET NAMES utf8");
+ $c .= "\n Selected DB '$dbname'\n";
+ foreach ($tables as $table => $sql)
+ {
+ $version = count($sql);
+ if (array_key_exists($table, $versions))
+ $diff = $version - $versions[$table];
+ else {
+ $versions[$table] = 0;
+ $diff = $version;
+ }
+
+ $c .= " Table '$table' need v$version (current v".strval($versions[$table].') => ');
+
+ if ($diff > 0) {
+ $sql_to_run = array_slice($sql, $versions[$table], $diff);
+ foreach($sql_to_run as $sql_run) {
+ if ($sql_run) {
+ $c .= "Run sql... ";
+ $result = $db->query($sql_run);
+ } else
+ $c .= "KO!!!";
+ }
+ if ($result) {
+ $c .= "OK";
+ $versions[$table] = $version;
+ }
+ } else
+ $c .= "OK";
+ $c .= "\n";
+ }
+ $c .= "\n";
+ $db->close();
+ }
+ file_put_contents(RYAPP_PATH.'database.versions', serialize($versions));
+ return ''.$c.'';
+ }
}
?>
diff --git a/code/web/api/common/dfm.php b/code/web/api/common/dfm.php
new file mode 100644
index 000000000..57bbe70d3
--- /dev/null
+++ b/code/web/api/common/dfm.php
@@ -0,0 +1,151 @@
+.
+ */
+
+ function getDirLinks($url_params, $path, $getvar, $home) {
+ $ret = '';
+ $dirs = explode('/', $path);
+ $dirpath = '';
+ $ret .= _l($home, $url_params, array($getvar => ''));
+ foreach($dirs as $dirname) {
+ if ($dirname) {
+ $ret .= ' » '._l($dirname, $url_params, array($getvar => '/'.$dirpath.$dirname));
+ $dirpath .= $dirname.'/';
+ }
+ }
+ return $ret;
+}
+
+function isEmptyDir($dir)
+{
+ if (($files = scandir($dir)) && count($files) <= 2) {
+ return true;
+ }
+ return false;
+}
+
+class ryDataFileManager {
+
+ public $id;
+ public $log_dir;
+ public $data_dir;
+ public $user_dir;
+ public $app_name;
+
+ function __construct($id, $app_name=APP_NAME) {
+ $this->app_name = $app_name;
+ $id = (strlen($id) == 0?'0':'').$id;
+ $id = (strlen($id) == 1?'0':'').$id;
+ $this->id = $id;
+ $this->log_dir = RYAPP_PATH.$app_name.'/data/logs/';
+ $this->data_dir = RYAPP_PATH.$app_name.'/data/app/';
+ $this->user_dir = RYAPP_PATH.$app_name.'/data/chars/'.$id[0].'/'.$id[1].'/'.$id.'/';
+
+ if (!is_dir($this->user_dir))
+ @mkdir($this->user_dir, 0777, true);
+
+ if (!is_dir($this->log_dir)) {
+ @mkdir($this->log_dir, 0777, true);
+ @mkdir($this->data_dir, 0777, true);
+ }
+ }
+
+ /*** Generic datafiles access methods ***/
+
+ function getData($name, $default=null) {
+ if (file_exists($name))
+ return unserialize(file_get_contents($name));
+ if ($default !== NULL) {
+ @file_put_contents($name, serialize($default));
+ return $default;
+ }
+ return NULL;
+ }
+
+ function saveData($name, $datas, $create_folders=true) {
+ if ($create_folders) {
+ if (!is_dir(dirname($name)))
+ @mkdir(dirname($name), 0777, true);
+ }
+ if ($datas !== NULL)
+ @file_put_contents($name, serialize($datas));
+ else
+ @unlink($name);
+ }
+
+ function listDataFiles($dir) {
+ $ret = array();
+ if ($handle = @opendir($dir)) {
+ while (false !== ($file = readdir($handle))) {
+ if ($file != '.' && $file != '..' && $file[0] != '.')
+ $ret[] = $file;
+ }
+ }
+ return $ret;
+ }
+
+ /*** App Datas ***/
+
+ function loadAppData($name, $default=null) {
+ return $this->getData($this->data_dir.$name, $default);
+ }
+
+ function saveAppData($name, $datas, $create_folders=true) {
+ return $this->saveData($this->data_dir.$name, $datas, $create_folders);
+ }
+
+ function listAppDataFiles($basedir='') {
+ return $this->listDataFiles($this->data_dir.$basedir);
+ }
+
+
+ /*** User Datas ***/
+
+ function loadUserData($name, $default=null) {
+ return $this->getData($this->user_dir.$name, $default);
+ }
+
+ function saveUserData($name, $datas, $create_folders=true) {
+ return $this->saveData($this->user_dir.$name, $datas, $create_folders);
+ }
+
+ function listUserDataFiles($basedir='') {
+ return $this->listDataFiles($this->user_dir.$basedir);
+ }
+
+ function loadUserDataFromApp($name, $app, $default=null) {
+ $id = $this->id;
+ $file = RYAPP_PATH.$app.'/data/chars/'.$id[0].'/'.$id[1].'/'.$id.'/'.$name;
+ if (file_exists($file))
+ return unserialize(file_get_contents($file));
+ if ($default !== null)
+ return $default;
+ return null;
+ }
+
+ function saveUserDataFromApp($name, $app, $datas) {
+ $id = $this->id;
+ $dir = RYAPP_PATH.$app.'/data/chars/'.$id[0].'/'.$id[1].'/'.$id.'/';
+ if (!is_dir($dir))
+ @mkdir($dir, 0777, true);
+ file_put_contents($dir.$name, serialize($datas));
+ }
+}
+
+
+?>
diff --git a/code/web/api/common/logger.php b/code/web/api/common/logger.php
index 1e5106b54..7599c62c9 100644
--- a/code/web/api/common/logger.php
+++ b/code/web/api/common/logger.php
@@ -1,9 +1,26 @@
.
+ */
+
class ryLogger {
public $enable = false;
- private $logs;
+ private $logs = array();
private static $_instance = NULL;
public static function getInstance() {
@@ -32,12 +49,16 @@ class ryLogger {
function getLogs() {
$ret = '';
- if ($this->logs && $this->enable)
- $ret = "Debug\n\n".implode("\n", $this->logs);
- $this->logs = array();
+ if ($this->logs && $this->enable) {
+ $ret = 'Debug
'. implode('
', $this->logs).'
';
+ $this->logs = array();
+ }
return $ret;
}
}
+function _log() {
+ return ryLogger::getInstance();
+}
?>
diff --git a/code/web/api/common/render.php b/code/web/api/common/render.php
index 60b101d38..30a68a266 100644
--- a/code/web/api/common/render.php
+++ b/code/web/api/common/render.php
@@ -1,4 +1,5 @@
.
*/
-function ryzom_app_render($title, $content, $ig=false, $bgcolor='', $javascript=array(), $homeLink=false) {
+function ryzom_app_render($title, $content, $style='', $javascript=array(), $homeLink=false) {
$c = '';
+
+ // get Lua code
+ $c .= ryLua::get(RYZOM_IG);
+ $at_end = ryLua::getEnd(RYZOM_IG);
+
// Render header
$title_prefix = '';
if (ON_IPHONE) {
$title_prefix = 'Ryzom - ';
}
- if (!$bgcolor)
- $bgcolor = '#000000'.($ig?'00':'');
-
- if (!$ig) {
+ if (!RYZOM_IG)
$c .= ''."\n";
- $c .= '
- '."\n";
- $c .= ' '.$title_prefix.(translation_exists($title)?_t($title):$title).''."\n";
+ $c .= ''."\n";
+ $c .= ' '.$title_prefix.(translation_exists($title)?_t($title):$title).''."\n";
+ if (!RYZOM_IG)
$c .= ' '."\n";
+
+ $events = '';
+ if (!RYZOM_IG) {
$c .= ryzom_render_header();
$c .= ryzom_render_header_www();
- $events = ON_IPHONE ? 'onorientationchange="updateOrientation();" ' : '';
- $c .= ' '."\n";
- $c .= ' '."\n";
+ if (function_exists('newrelic_get_browser_timing_header'))
+ $c .= newrelic_get_browser_timing_header();
+ if(ON_IPHONE) $events = 'onorientationchange="updateOrientation();" ';
+ } else {
+ #if (!$style)
+ $style='bgcolor="#00000000"';
+ }
+
+ if (!RYZOM_IG) {
// Javascript
$js_code = '';
+ if (is_string($javascript))
+ $javascript = array($javascript);
foreach ($javascript as $js)
- $js_code .= '';
+ $js_code .= ' '."\n";
$c .= $js_code;
-
- $c .= ryzom_render_www(ryzom_render_window($title, $content, $homeLink));
- $c .= '';
- } else {
- $c .= '';
- $c .= $content;
- $debug = ryLogger::getInstance()->getLogs();
- if ($debug)
- $c .= '
';
- $c .= '';
}
+
+ $c .= ' '."\n";
+ $c .= ' '."\n";
+
+ if (!RYZOM_IG) {
+ $c .= ryzom_render_www(ryzom_render_window($title, $content, $homeLink));
+ $c .= '';
+ if (function_exists('newrelic_get_browser_timing_header'))
+ $c .= newrelic_get_browser_timing_footer();
+ } else {
+ $c .= $content.'
'.ryLogger::getInstance()->getLogs().' |
';
+ }
+
+ $c .= ''.$at_end;
+
return $c;
}
@@ -146,7 +165,9 @@ function ryzom_render_window_begin($title, $homeLink=false) {
}
function ryzom_render_window_end() {
+ global $user;
return '
+ '.(isset( $user['groups'])?implode(':', $user['groups']):'').'
'.ryLogger::getInstance()->getLogs().'
powered by ryzom-api
@@ -191,25 +212,161 @@ function ryzom_render_www_end() {
return '';
}
-function ryzom_render_login_form($char, $aligned=true) {
+
+function _s($tag, $text) {
+ global $ryzom_render_styles, $ryzom_render_tmpls;
+ if (!array_key_exists($tag, $ryzom_render_tmpls))
+ return $text;
+ if (is_array($text))
+ return $p = $text;
+ else
+ $p[0] = $text;
+ $p['color1'] = $ryzom_render_styles[$tag][0];
+ $p['color2'] = $ryzom_render_styles[$tag][1];
+ $code = '$c = "'.str_replace('"', '\"', $ryzom_render_tmpls[$tag]).'";';
+ eval($code);
+ return $c;
+}
+
+function ryzom_get_color_style($tag, $color=0) {
+ global $ryzom_render_styles;
+ if (!array_key_exists($tag, $ryzom_render_styles))
+ return '000000';
+ return $ryzom_render_styles[$tag][$color];
+}
+
+function ryzom_set_title($title) {
+ $GLOBALS['ryzom_render_title'] = $title;
+}
+
+function ryzom_get_title() {
+ return $GLOBALS['ryzom_render_title'];
+}
+
+function ryzom_font($text, $color="", $size="") {
+ if (RYZOM_IG) {
+ $color = $color?'color="'.$color.'"':'';
+ $size = $size?'size="'.$size.'"':'';
+ } else {
+ $color = $color?'color:'.$color.';':'';
+ $size = $size?'font-size:'.$size.'pt':'';
+ }
+ return (RYZOM_IG?"":"").$text.'';
+}
+
+function ryzom_render_login_form($char, $aligned=true, $action="") {
$c = '';
if ($aligned) {
- $c .= '