diff --git a/code/ryzom/server/src/gpm_service/CMakeLists.txt b/code/ryzom/server/src/gpm_service/CMakeLists.txt
index bee0c0e7c..802380761 100644
--- a/code/ryzom/server/src/gpm_service/CMakeLists.txt
+++ b/code/ryzom/server/src/gpm_service/CMakeLists.txt
@@ -20,4 +20,8 @@ NL_ADD_RUNTIME_FLAGS(ryzom_gpm_service)
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
+IF(WITH_PCH)
+ ADD_NATIVE_PRECOMPILED_HEADER(ryzom_gpm_service ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
+ENDIF(WITH_PCH)
+
INSTALL(TARGETS ryzom_gpm_service RUNTIME DESTINATION sbin COMPONENT services)
diff --git a/code/ryzom/server/src/gpm_service/cell.cpp b/code/ryzom/server/src/gpm_service/cell.cpp
index d5e0a01a1..b67989b69 100644
--- a/code/ryzom/server/src/gpm_service/cell.cpp
+++ b/code/ryzom/server/src/gpm_service/cell.cpp
@@ -16,6 +16,7 @@
+#include "stdpch.h"
#include "cell.h"
using namespace std;
diff --git a/code/ryzom/server/src/gpm_service/client_messages.cpp b/code/ryzom/server/src/gpm_service/client_messages.cpp
index df1521dbf..cdf4fffe2 100644
--- a/code/ryzom/server/src/gpm_service/client_messages.cpp
+++ b/code/ryzom/server/src/gpm_service/client_messages.cpp
@@ -15,6 +15,7 @@
// along with this program. If not, see .
+#include "stdpch.h"
// include files
#include "nel/misc/types_nl.h"
diff --git a/code/ryzom/server/src/gpm_service/commands.cpp b/code/ryzom/server/src/gpm_service/commands.cpp
index d24f830e7..c1d3e9296 100644
--- a/code/ryzom/server/src/gpm_service/commands.cpp
+++ b/code/ryzom/server/src/gpm_service/commands.cpp
@@ -15,6 +15,7 @@
// along with this program. If not, see .
+#include "stdpch.h"
// Nel Misc
#include "nel/misc/command.h"
diff --git a/code/ryzom/server/src/gpm_service/gpm_service.cpp b/code/ryzom/server/src/gpm_service/gpm_service.cpp
index 14583f01b..7e82d1d3d 100644
--- a/code/ryzom/server/src/gpm_service/gpm_service.cpp
+++ b/code/ryzom/server/src/gpm_service/gpm_service.cpp
@@ -15,6 +15,7 @@
// along with this program. If not, see .
+#include "stdpch.h"
// misc
#include "nel/misc/command.h"
diff --git a/code/ryzom/server/src/gpm_service/messages.cpp b/code/ryzom/server/src/gpm_service/messages.cpp
index 8fd774750..b2a47a576 100644
--- a/code/ryzom/server/src/gpm_service/messages.cpp
+++ b/code/ryzom/server/src/gpm_service/messages.cpp
@@ -14,6 +14,7 @@
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see .
+#include "stdpch.h"
// include files
#include "nel/misc/types_nl.h"
diff --git a/code/ryzom/server/src/gpm_service/move_checker.cpp b/code/ryzom/server/src/gpm_service/move_checker.cpp
index beca3531a..f8415761e 100644
--- a/code/ryzom/server/src/gpm_service/move_checker.cpp
+++ b/code/ryzom/server/src/gpm_service/move_checker.cpp
@@ -14,6 +14,8 @@
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see .
+#include "stdpch.h"
+
#include "nel/misc/common.h"
#include "game_share/utils.h"
diff --git a/code/ryzom/server/src/gpm_service/patat_grid.cpp b/code/ryzom/server/src/gpm_service/patat_grid.cpp
index eef3e5886..fc48fc717 100644
--- a/code/ryzom/server/src/gpm_service/patat_grid.cpp
+++ b/code/ryzom/server/src/gpm_service/patat_grid.cpp
@@ -15,6 +15,7 @@
// along with this program. If not, see .
+#include "stdpch.h"
#include "patat_grid.h"
diff --git a/code/ryzom/server/src/gpm_service/patat_subscribe_manager.cpp b/code/ryzom/server/src/gpm_service/patat_subscribe_manager.cpp
index 9e5c6a67d..6616ad4e6 100644
--- a/code/ryzom/server/src/gpm_service/patat_subscribe_manager.cpp
+++ b/code/ryzom/server/src/gpm_service/patat_subscribe_manager.cpp
@@ -15,6 +15,7 @@
// along with this program. If not, see .
+#include "stdpch.h"
#include "patat_subscribe_manager.h"
diff --git a/code/ryzom/server/src/gpm_service/sheets.cpp b/code/ryzom/server/src/gpm_service/sheets.cpp
index 6d0e43c87..bdad20489 100644
--- a/code/ryzom/server/src/gpm_service/sheets.cpp
+++ b/code/ryzom/server/src/gpm_service/sheets.cpp
@@ -16,6 +16,7 @@
+#include "stdpch.h"
// Misc
#include "nel/misc/path.h"
diff --git a/code/ryzom/server/src/gpm_service/stdpch.cpp b/code/ryzom/server/src/gpm_service/stdpch.cpp
new file mode 100644
index 000000000..d4b14ffe2
--- /dev/null
+++ b/code/ryzom/server/src/gpm_service/stdpch.cpp
@@ -0,0 +1,17 @@
+// Ryzom - 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 "stdpch.h"
diff --git a/code/ryzom/server/src/gpm_service/stdpch.h b/code/ryzom/server/src/gpm_service/stdpch.h
new file mode 100644
index 000000000..72a71657d
--- /dev/null
+++ b/code/ryzom/server/src/gpm_service/stdpch.h
@@ -0,0 +1,98 @@
+// Ryzom - 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 "nel/misc/types_nl.h"
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+// STL
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include