[patch] fixes for compiling under mingw

Holger Schröder schroder at kde.org
Thu Jun 7 00:04:38 CEST 2007


On Wednesday 06 June 2007 23:53:00 you wrote:
> On Wednesday 06 June 2007 10:32, Holger Schröder wrote:
> > Hi Alex, hi list,
> >
> > i am trying to simplify compiling of kde on windows. for that i need to
> > get some changed into kdelibs/cmake/modules.
> >
> > most of them add a cmake variable for the prefix where to find a library,
> > like gif, jpeg, etc.
> >
> > and then there is a patch for findqt4.cmake.
> >
> > the problem is, that the debug libs of qt 4 are nor found under windows,
> > because they are named Q<Foo>d4 for the debug libraries.
> >
> > so for every Q<foo>4 in a find_library statement i added an Q<foo>d4
> > entry.
>
> Qt: ok
> Since which Qt release is this so ?
>
> For the other cmake modules: where do these variables come from ?
> STRIGI_INSTALL_PREFIX
> SHARED_MIMEINFO_INSTALL_PREFIX
> WIN32LIBS_INSTALL_PREFIX
> KDEWIN32_INSTALL_PREFIX
>
>
> If they have to be set manually this isn't a very good idea.
> How about setting CMAKE_PROGRAM/INCLUDE/LIBRARY_PATH ?
>
christian just told me about this possibility, what about this patch ?
(also asked christian and ralf about it, no feedback yet).

findwin32libs.cmake would be added, and findgnuwin32.cmake would be removed

> Or reusing some variable which is set by FindKDEWin32Libs.cmake or
> something like this ?
>
> Alex

i can play mahjonng under windows now :-)

regards, Holger
-------------- next part --------------
A non-text attachment was scrubbed...
Name: findkde4internal.patch
Type: text/x-diff
Size: 591 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20070607/0bf75698/attachment.bin 
-------------- next part --------------

# Copyright (c) 2006, Peter Kuemmel, <syntheticpp at yahoo.com>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.

message( "findwin32libs begin" )

if (WIN32)

  IF (WIN32LIBS_INCLUDE_DIR)
    # Already in cache, be silent
    SET(WIN32LIBS_FIND_QUIETLY TRUE)
  ENDIF (WIN32LIBS_INCLUDE_DIR)

# check if WIN32LIBS_DIR is already set 
# (e.g. by command line argument or the calling script)
if(NOT WIN32LIBS_DIR)
	# check for enviroment variable
	file(TO_CMAKE_PATH "$ENV{WIN32LIBS_DIR}" WIN32LIBS_DIR)

	# now check for deprecated GNUWIN32_DIR
        if(NOT WIN32LIBS_DIR)
		file(TO_CMAKE_PATH "$ENV{GNUWIN32_DIR}" WIN32LIBS_DIR)
	endif(NOT WIN32LIBS_DIR)

	if(NOT WIN32LIBS_DIR)
		# search in the default program install folder
		file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles)
		find_file(WIN32LIBS_DIR_tmp win32libs gnuwin32 
   			PATHS
   			"${_progFiles}"
   			"C:/" "D:/" "E:/" "F:/" "G:/"
		)
		set(WIN32LIBS_DIR ${WIN32LIBS_DIR_tmp})
	endif(NOT WIN32LIBS_DIR)
endif(NOT WIN32LIBS_DIR)

if (WIN32LIBS_DIR)
   set(WIN32LIBS_INCLUDE_DIR ${WIN32LIBS_DIR}/include)
   set(WIN32LIBS_LIBRARY_DIR ${WIN32LIBS_DIR}/lib)
   set(WIN32LIBS_BINARY_DIR  ${WIN32LIBS_DIR}/bin)
   set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${WIN32LIBS_INCLUDE_DIR})
   set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${WIN32LIBS_LIBRARY_DIR})
   set(CMAKE_PROGRAM_PATH ${CMAKE_PROGRAM_PATH} ${WIN32LIBS_BINARY_DIR})
   set(WIN32LIBS_FOUND TRUE)
else (WIN32LIBS_DIR)
   set(WIN32LIBS_FOUND)
endif (WIN32LIBS_DIR)

if (WIN32LIBS_FOUND)
  if (NOT WIN32LIBS_FIND_QUIETLY)
    message(STATUS "Found Win32Libs: ${WIN32LIBS_DIR}")
  endif (NOT WIN32LIBS_FIND_QUIETLY)
else (WIN32LIBS_FOUND)
  if (WIN32LIBS_FIND_REQUIRED)
    message(FATAL_ERROR "Could NOT find Win32Libs")
  endif (WIN32LIBS_FIND_REQUIRED)
endif (WIN32LIBS_FOUND)

endif (WIN32)

message( "findwin32libs end" )


More information about the Kde-buildsystem mailing list