Browse Source

conversion to the cmake building system.

Signed-off-by: gregory guy <gregory-tde@laposte.net>
pull/2/head
gregory guy 5 months ago
parent
commit
0960d99962
No known key found for this signature in database GPG Key ID: 3BCCA0F7AB4536F4
5 changed files with 159 additions and 2 deletions
  1. +69
    -0
      CMakeLists.txt
  2. +55
    -0
      ConfigureChecks.cmake
  3. +8
    -0
      config.h.cmake
  4. +27
    -0
      src/CMakeLists.txt
  5. +0
    -2
      src/plugin.c

+ 69
- 0
CMakeLists.txt View File

@@ -0,0 +1,69 @@
############################################
# #
# Improvements and feedbacks are welcome #
# #
# This file is released under GPL >= 3 #
# #
############################################


cmake_minimum_required( VERSION 2.8 )


#### general package setup

project( kaffeine-mozilla )
set( VERSION R14.1.0 )


#### include essential cmake modules

include( FindPkgConfig )
include( CheckFunctionExists )
include( CheckSymbolExists )
include( CheckIncludeFile )
include( CheckLibraryExists )
include( CheckCSourceCompiles )
include( CheckCXXSourceCompiles )


#### include our cmake modules

set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" )
include( TDEMacros )


##### setup install paths

include( TDESetupPaths )
tde_setup_paths( )


##### optional stuff

option( WITH_ALL_OPTIONS "Enable all optional support" OFF )
option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} )


##### configure checks

include( ConfigureChecks.cmake )


###### global compiler settings

add_definitions( -DHAVE_CONFIG_H )

set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" )
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" )
set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" )


##### directories

add_subdirectory( src )


##### write configure files

configure_file( config.h.cmake config.h @ONLY )

+ 55
- 0
ConfigureChecks.cmake View File

@@ -0,0 +1,55 @@
###########################################
# #
# Improvements and feedback are welcome #
# #
# This file is released under GPL >= 3 #
# #
###########################################

tde_setup_architecture_flags( )

include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)

tde_setup_largefiles( )


##### check for gcc visibility support

if( WITH_GCC_VISIBILITY )
tde_setup_gcc_visibility( )
endif( WITH_GCC_VISIBILITY )


##### look for X11 headers

find_package( X11 )


##### check for nspr

pkg_search_module( NSPR nspr )

if( NSPR_FOUND )
find_path( NSPR_INCLUDE_DIR nspr/prtypes.h )
set( NSPR_INCLUDE_DIRS "${NSPR_INCLUDE_DIR}/nspr" )
else()
tde_message_fatal( "nspr4 headers are required but were not found on your system" )
endif()


##### check for libXaw(7)

pkg_search_module( LIBXAW7 xaw7 )

if( LIBXAW7_FOUND )
find_path( LIBXAW7_INCLUDE_DIR X11/Xaw/Box.h )
set( LIBXAW7_INCLUDE_DIRS "${LIBXAW7_INCLUDE_DIR}" )
else()
tde_message_fatal( "libXaw7 is required but was not found on your system" )
endif()


##### check for the math libc

find_library( MATH_LIBC m )

+ 8
- 0
config.h.cmake View File

@@ -0,0 +1,8 @@
#define VERSION "@VERSION@"

// Defined if you have fvisibility and fvisibility-inlines-hidden support.
#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1

/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@

+ 27
- 0
src/CMakeLists.txt View File

@@ -0,0 +1,27 @@

include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${NSPR_INCLUDE_DIRS}
${X11_INCLUDE_DIR}
${X11_Xt_INCLUDE_PATH}
${LIBXAW7_INCLUDE_DIRS}
)


##### kaffeineplugin (module)

tde_add_library( kaffeineplugin MODULE

SOURCES
plugin.c
npunix.c
LINK
${X11_LIBRARIES}
${X11_Xt_LIB}
${LIBXAW7_LIBRARIES}
${MATH_LIBC}

DESTINATION ${LIB_INSTALL_DIR}/mozilla/plugins
)

+ 0
- 2
src/plugin.c View File

@@ -64,8 +64,6 @@

#include <stdio.h>
#include <math.h>
#include <unistd.h>


#define XP_UNIX



Loading…
Cancel
Save