diff --git a/doc/doc.pri b/doc/doc.pri
index bfcaaecf33543ebc81e3cfdbaccfd22ef3eb4e39..4ed0de99375f9c6ff5d160920d2f70e3745d30a1 100644
--- a/doc/doc.pri
+++ b/doc/doc.pri
@@ -21,6 +21,11 @@ qch_docs.commands = $$HELPGENERATOR -o $$QCH_FILE $$QHP_FILE
 qch_docs.depends += html_docs
 qch_docs.files = $$QCH_FILE
 
+linux-* {
+    qch_docs.path = /share/doc/qtcreator
+    INSTALLS += qch_docs
+}
+
 macx {
     cp_docs.commands = $${QMAKE_COPY_DIR} $${OUT_PWD}/doc $${OUT_PWD}/bin/QtCreator.app/Contents/Resources
     cp_docs.depends += qch_docs
diff --git a/qtcreator.pro b/qtcreator.pro
index faaa0709888ddcfba5dfe28ed8f0e2eb0cb14292..fe0e0c2795fb3803fcb557886ec67619278fdc6c 100644
--- a/qtcreator.pro
+++ b/qtcreator.pro
@@ -5,26 +5,12 @@ count(TOO_OLD_LIST, 1) {
     error("Use at least Qt 4.5.")
 }
 
-
-linux-* {
-	isEmpty( LOCATION )  {
-		LOCATION = /usr/share
-	}
-	documentation.files     += doc/qtcreator.qch
-	documentation.path       = $$LOCATION/share/qtcreator/doc/qtcreator
-
-	share.files         += share/qtcreator/*
-	share.parth			 = $$LOCATION/share/qtcreator
-
-
-	INSTALLS += \
-		documentation \
-		share		
-}
+include(doc/doc.pri)
+include(share/share.pri)
 
 TEMPLATE  = subdirs
 CONFIG   += ordered
 
 SUBDIRS = src
 
-include(doc/doc.pri)
+message($$INSTALLS)
diff --git a/src/app/app.pro b/src/app/app.pro
index e839964ba10aea170b82e3b947fbf970218e6878..c42e206d5d6af3a490ee72a1bd45419875fa73d2 100644
--- a/src/app/app.pro
+++ b/src/app/app.pro
@@ -16,10 +16,6 @@ linux-* {
     ISGCC33=$$(GCC33)
     !equals(ISGCC33, 1):QT += svg dbus
 
-	isEmpty( LOCATION )  {
-		error("app.pro: including file must define LOCATION (didn't you run qmake from the root dir?)")
-	}
-
 	binaries.files          += bin/qtcreator
 	binaries.path            = $$LOCATION/bin
 
diff --git a/src/qworkbench.pri b/src/qworkbench.pri
index b76b421802e96bdafdbefb8d63c594d44a01fc30..0fe4418fcae44b335a00f210094bb094d9f083cb 100644
--- a/src/qworkbench.pri
+++ b/src/qworkbench.pri
@@ -6,12 +6,6 @@ isEmpty(TEST):CONFIG(debug, debug|release) {
     }
 }
 
-linux-* {
-	isEmpty( LOCATION )  {
-		error("qworkbench.pri: including file must define LOCATION (didn't you run qmake from the root dir?)")
-	}
-}
-
 equals(TEST, 1) {
     QT +=testlib
     DEFINES += WITH_TESTS
@@ -21,12 +15,14 @@ isEmpty(IDE_BUILD_TREE) {
     error("qworkbench.pri: including file must define IDE_BUILD_TREE (probably a relative path)")
 }
 macx {
-    IDE_APP_TARGET = QtCreator
+    IDE_APP_TARGET   = QtCreator
     IDE_LIBRARY_PATH = $$IDE_BUILD_TREE/bin/$${IDE_APP_TARGET}.app/Contents/PlugIns
+    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH 
     contains(QT_CONFIG, ppc):CONFIG += ppc x86
 } else {
-    IDE_APP_TARGET = qtcreator
-    IDE_LIBRARY_PATH = $$IDE_BUILD_TREE/share/qtcreator/lib
+    IDE_APP_TARGET   = qtcreator
+    IDE_LIBRARY_PATH = $$IDE_BUILD_TREE/share/lib/qtcreator
+    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH/plugins/
 }
 IDE_APP_PATH = $$IDE_BUILD_TREE/bin
 win32 {
diff --git a/src/qworkbenchlibrary.pri b/src/qworkbenchlibrary.pri
index 46f28f443e9505a382357a016c88a14666a2c298..5425e1813d62552d90c39fc6127a5c77999982f2 100644
--- a/src/qworkbenchlibrary.pri
+++ b/src/qworkbenchlibrary.pri
@@ -24,4 +24,4 @@ contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
 linux-* {
 	target.path = $$LOCATION/lib/qtcreator
 	INSTALLS += target
-}
\ No newline at end of file
+}
diff --git a/src/qworkbenchplugin.pri b/src/qworkbenchplugin.pri
index e689f6ed3b2f3e868f6a1df7cb0300a89935bdb6..d73f0e84567eed8acce246828db00325812397d0 100644
--- a/src/qworkbenchplugin.pri
+++ b/src/qworkbenchplugin.pri
@@ -7,7 +7,7 @@ isEmpty(PROVIDER) {
     PROVIDER = Nokia
 }
 
-DESTDIR = $$IDE_LIBRARY_PATH/$$PROVIDER/
+DESTDIR = $$IDE_PLUGIN_PATH/$$PROVIDER/
 LIBS += -L$$DESTDIR
 INCLUDEPATH += $$IDE_SOURCE_TREE/src/plugins
 DEPENDPATH += $$IDE_SOURCE_TREE/src/plugins
@@ -49,9 +49,11 @@ macx {
 
 contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
 
-
+CONFIG += plugin
 
 linux-* {
-	target.path = $$LOCATION/lib/qtcreator/plugins
-	INSTALLS += target
+    target.path = /lib/qtcreator/plugins
+    pluginspec.files += $${TARGET}.pluginspec
+    pluginspec.path = /lib/qtcreator/plugins
+    INSTALLS += target pluginspec
 }