Revision: 75569 http://trac.macports.org/changeset/75569 Author: snc@macports.org Date: 2011-01-30 14:26:46 -0800 (Sun, 30 Jan 2011) Log Message: ----------- kdelibs4: fix multi-file patch again, #28214 Modified Paths: -------------- trunk/dports/kde/kdelibs4/Portfile trunk/dports/kde/kdelibs4/files/workaround-kdeinit4-crash.patch Modified: trunk/dports/kde/kdelibs4/Portfile =================================================================== --- trunk/dports/kde/kdelibs4/Portfile 2011-01-30 22:22:50 UTC (rev 75568) +++ trunk/dports/kde/kdelibs4/Portfile 2011-01-30 22:26:46 UTC (rev 75569) @@ -6,6 +6,7 @@ name kdelibs4 version 4.6.0 +revision 1 categories kde kde4 maintainers snc sharky michaelld description KDE4 core libraries Modified: trunk/dports/kde/kdelibs4/files/workaround-kdeinit4-crash.patch =================================================================== --- trunk/dports/kde/kdelibs4/files/workaround-kdeinit4-crash.patch 2011-01-30 22:22:50 UTC (rev 75568) +++ trunk/dports/kde/kdelibs4/files/workaround-kdeinit4-crash.patch 2011-01-30 22:26:46 UTC (rev 75569) @@ -1,5 +1,5 @@ ---- kdelibs-4.6.0/kinit/kinit.cpp.wee 2011-01-28 11:33:58.000000000 -0500 -+++ kdelibs-4.6.0/kinit/kinit.cpp 2011-01-28 11:34:54.000000000 -0500 +--- kdelibs-4.6.0/kinit/kinit.cpp.derp 2011-01-30 17:08:24.000000000 -0500 ++++ kdelibs-4.6.0/kinit/kinit.cpp 2011-01-30 17:08:30.000000000 -0500 @@ -537,6 +537,14 @@ init_startup_info( startup_id, name, envc, envs ); #endif @@ -94,3 +94,69 @@ break; } default: +--- kdelibs-4.6.0/kinit/CMakeLists.txt.weee 2011-01-30 17:08:09.000000000 -0500 ++++ kdelibs-4.6.0/kinit/CMakeLists.txt 2011-01-30 17:15:54.000000000 -0500 +@@ -57,6 +57,16 @@ + + install(TARGETS kdeinit4 ${INSTALL_TARGETS_DEFAULT_ARGS} ) + ++########### kdeinit4_helper ############### ++ ++set(kdeinit4_helper_SRCS helper.cpp) ++ ++kde4_add_executable(kdeinit4_helper NOGUI ${kdeinit4_helper_SRCS}) ++ ++target_link_libraries(kdeinit4_helper ${QT_QTCORE_LIBRARY}) ++ ++install(TARGETS kdeinit4_helper DESTINATION ${LIBEXEC_INSTALL_DIR} ) ++ + ########### kwrapper4 ############### + if (WIN32) + set(kwrapper_SRCS kwrapper_win.cpp ) +Index: kdelibs-4.3.2/kinit/helper.cpp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ kdelibs-4.3.2/kinit/helper.cpp 2009-10-14 19:11:06.000000000 +0200 +@@ -0,0 +1,42 @@ ++#include <stdio.h> ++#include <stdlib.h> ++ ++#include <QFile> ++#include <QLibrary> ++ ++typedef int (*handler) (int, char *[]); ++ ++int main(int argc, char *argv[]) ++{ ++ if (argc < 2) ++ { ++ fprintf(stderr, "Too few arguments\n"); ++ exit(1); ++ } ++ ++ QString libpath = QFile::decodeName(argv[argc-1]); ++ QLibrary l(libpath); ++ ++ if (!libpath.isEmpty() && (!l.load() || !l.isLoaded())) ++ { ++ QString ltdlError = l.errorString(); ++ fprintf(stderr, "Could not open library %s: %s\n", qPrintable(libpath), qPrintable(ltdlError) ); ++ exit(1); ++ } ++ ++ void * sym = l.resolve( "kdeinitmain"); ++ if (!sym) ++ { ++ sym = l.resolve( "kdemain" ); ++ if ( !sym ) ++ { ++ QString ltdlError = l.errorString(); ++ fprintf(stderr, "Could not find kdemain: %s\n", qPrintable(ltdlError) ); ++ exit(1); ++ } ++ } ++ ++ handler func = (int (*)(int, char *[])) sym; ++ exit( func(argc - 1, argv)); /* Launch! */ ++} ++
participants (1)
-
snc@macports.org