This is a multi-part message in MIME format. --------------090707090004010402040500 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Ralf Habacker wrote: > emerge --fetch emerge (or in emerge root "svn update emerge\bin" ) > > then run > > set EMERGE_OPTION=cmake.useIDE=1 A candidate for kdesettings-example.bat? > normaly self.package (generated from the emerge script file name) > matches the project name in the CMakeLists.txt. If not > self.subinfo.options.make.slnBaseName could be used in the package > emerge script. attachd a patch which reads the project filename from CMakeLists.txt >> > Thanks for this contribution - we only have to find a way to merge the > recent feature (openening the ide in make action) and your approach. We could introduce cmake.openIDE. Also cmake.numberIDEThreads= or is there already a option for "make -j" which we could use? And we must somehow generate the project configuration "Debug:Win32", ... Peter --------------090707090004010402040500 Content-Type: text/plain; name="useIDE.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="useIDE.patch" Index: kdesettings-example.bat =================================================================== --- kdesettings-example.bat (revision 1047621) +++ kdesettings-example.bat (working copy) @@ -144,6 +144,12 @@ rem for all other packages this option doesn't have any effect rem set EMERGE_DEFAULTCATEGORY=kde-4.3 + +rem This option configures CMake to generate Visual Studio solution files instead of nmake files. +rem set EMERGE_OPTION=cmake.useIDE=1 + + + rem No editing should be necessary below this line (in an ideal world) rem ################################################################## Index: bin/BuildSystem/CMakeBuildSystem.py =================================================================== --- bin/BuildSystem/CMakeBuildSystem.py (revision 1047621) +++ bin/BuildSystem/CMakeBuildSystem.py (working copy) @@ -96,10 +96,24 @@ os.putenv( "PATH", os.path.join( self.rootdir, self.envPath ) + ";" + os.getenv("PATH") ) if self.compiler() == "msvc2008" and self.subinfo.options.cmake.useIDE: - if self.subinfo.options.make.slnBaseName: - command = "start %s.sln" % self.subinfo.options.make.slnBaseName + sourceDir = self.sourceDir() + topLevelCMakeList = os.path.join(self.sourceDir(),"CMakeLists.txt") + if os.path.exists(topLevelCMakeList): + f = open(topLevelCMakeList,'r') + lines = f.read().splitlines() + f.close() + for line in lines: + if line.find("project") > -1: + a = line.split("(") + a = a[1].split(")") + slnname = a[0].strip() + if slnname: + command = "vcbuild /M2 %s.sln \"Debug|Win32\"" % slnname else: - command = "start %s.sln" % self.package + if self.subinfo.options.make.slnBaseName: + command = "vcbuild /M2 %s.sln \"Debug|Win32\"" % self.subinfo.options.make.slnBaseName + else: + command = "vcbuild /M2 %s.sln \"Debug|Win32\"" % self.package else: command = self.makeProgramm @@ -122,14 +136,17 @@ if not self.noFast: fastString = "/fast" - if self.subinfo.options.install.useMakeToolForInstall == True: - command = "%s DESTDIR=%s install%s" % ( self.makeProgramm, self.installDir(), fastString ) + if self.subinfo.options.install.useMakeToolForInstall == True: + if self.compiler() == "msvc2008" and self.subinfo.options.cmake.useIDE: + command = "vcbuild INSTALL.vcproj \"Debug|Win32\"" + else: + command = "%s DESTDIR=%s install%s" % ( self.makeProgramm, self.installDir(), fastString ) else: command = "cmake -DCMAKE_INSTALL_PREFIX=%s -P cmake_install.cmake" % self.installDir() self.system( command, "install" ) - if self.subinfo.options.install.useMakeToolForInstall == True: + if self.subinfo.options.install.useMakeToolForInstall == True and not self.subinfo.options.cmake.useIDE: utils.fixCmakeImageDir( self.installDir(), self.mergeDestinationDir() ) return True --------------090707090004010402040500 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Kde-windows mailing list Kde-windows@kde.org https://mail.kde.org/mailman/listinfo/kde-windows --------------090707090004010402040500--