Conversion to the cmake building system.

Signed-off-by: gregory guy <gregory-tde@laposte.net>
pull/1/head
gregory guy 3 years ago
parent 0896465ce7
commit a69b55c674
No known key found for this signature in database
GPG Key ID: 2CC84A1CC6823AF8

@ -0,0 +1,94 @@
############################################
# #
# Improvements and feedbacks are welcome #
# #
# This file is released under GPL >= 3 #
# #
############################################
cmake_minimum_required( VERSION 2.8.12 )
#### general package setup
project( tqscintilla )
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} )
##### user requested modules
option( BUILD_ALL "Build all" ON )
option( BUILD_PLUGIN "Build qscintilla plugin" ${BUILD_ALL} )
option( BUILD_DOC "Build documentation" ${BUILD_ALL} )
##### configure checks
include( ConfigureChecks.cmake )
###### global compiler settings
add_definitions( -DHAVE_CONFIG_H -UTQT_NO_ASCII_CAST )
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 )
add_subdirectory( qt )
tde_conditional_add_subdirectory( BUILD_PLUGIN designer )
tde_conditional_add_project_docs( BUILD_DOC )
##### write configure files
configure_file( config.h.cmake config.h @ONLY )
# pkg-config
set( prefix ${CMAKE_INSTALL_PREFIX} )
string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_EXEC_PREFIX ${EXEC_INSTALL_PREFIX} )
string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_INCLUDE_DIR ${TQT_INCLUDES_DIR} )
string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_LIB_DIR ${TQT_LIBDIR} )
configure_file( qscintilla.pc.cmake qscintilla.pc @ONLY )
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/qscintilla.pc
DESTINATION ${PKGCONFIG_INSTALL_DIR}
)

@ -0,0 +1,72 @@
###########################################
# #
# Improvements and feedback are welcome #
# #
# This file is released under GPL >= 3 #
# #
###########################################
# required stuff
find_package( TQt )
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 tqt3 plugins location
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} tqt-mt --variable=pluginsdir
OUTPUT_VARIABLE _pluginsdir
RESULT_VARIABLE _result
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set( TQT_PLUGINS_DIR ${_pluginsdir} )
message( STATUS "TQT plugins directory: ${TQT_PLUGINS_DIR}" )
##### Look for tqt3 translations location
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} tqt-mt --variable=translationsdir
OUTPUT_VARIABLE _translationsdir
RESULT_VARIABLE _result
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set( TQT_TRANSLATIONS_DIR ${_translationsdir} )
message( STATUS "TQT translation directory: ${TQT_TRANSLATIONS_DIR}" )
##### Look for tqt3 includes location
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} tqt-mt --variable=includedir
OUTPUT_VARIABLE _includedir
RESULT_VARIABLE _result
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set( TQT_INCLUDES_DIR ${_includedir} )
message( STATUS "TQT include directory: ${TQT_INCLUDES_DIR}" )
##### Look for tqt3 libraries location
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} tqt-mt --variable=libdir
OUTPUT_VARIABLE _libdir
RESULT_VARIABLE _result
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set( TQT_LIBDIR ${_libdir} )
message( STATUS "TQT libraries directory: ${TQT_LIBDIR}" )

@ -0,0 +1,8 @@
#define VERSION "@VERSION@"
// Defined if you have fvisibility and fvisibility-inlines-hidden support.
#cmakedefine __TDE_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@

@ -0,0 +1,24 @@
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TQT_INCLUDE_DIRS}
${CMAKE_SOURCE_DIR}/qt
)
link_directories(
${TQT_LIBRARY_DIRS}
)
##### qscintillaplugin (shared)
tde_add_library( qscintillaplugin SHARED
SOURCES
qscintillaplugin.cpp
LINK
qscintilla-shared
DESTINATION ${TQT_PLUGINS_DIR}/designer
)

Before

Width:  |  Height:  |  Size: 943 B

After

Width:  |  Height:  |  Size: 943 B

Before

Width:  |  Height:  |  Size: 35 B

After

Width:  |  Height:  |  Size: 35 B

Before

Width:  |  Height:  |  Size: 706 B

After

Width:  |  Height:  |  Size: 706 B

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

@ -0,0 +1,24 @@
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TQT_INCLUDE_DIRS}
${CMAKE_SOURCE_DIR}/qt
${CMAKE_SOURCE_DIR}/src
)
link_directories(
${TQT_LIBRARY_DIRS}
)
##### app (executable)
tde_add_executable( app AUTOMOC
SOURCES
application.cpp
main.cpp
LINK
qscintilla-shared
)

@ -18,7 +18,7 @@
#include <tqmenubar.h> #include <tqmenubar.h>
#include <tqfile.h> #include <tqfile.h>
#include <tqfiledialog.h> #include <tqfiledialog.h>
#include <statusbar.h> #include <tqstatusbar.h>
#include <tqmessagebox.h> #include <tqmessagebox.h>
#include <tqprinter.h> #include <tqprinter.h>
#include <tqapplication.h> #include <tqapplication.h>
@ -269,3 +269,5 @@ void ApplicationWindow::aboutTQt()
{ {
TQMessageBox::aboutTQt( this, "TQScintilla Application Example" ); TQMessageBox::aboutTQt( this, "TQScintilla Application Example" );
} }
#include "application.moc"

@ -0,0 +1,14 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@PC_EXEC_PREFIX@
libdir=@PC_LIB_DIR@
includedir=@PC_INCLUDE_DIR@
pkglibdir=${libdir}
pkgincludedir=${includedir}
Name: @PROJECT_NAME@
Version: 7.0.1
Description: @PROJECT_NAME@ is a source code editing library for TDE.
Cflags: -I${includedir}
Libs: -L${libdir} -lqscintilla

@ -0,0 +1,88 @@
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TQT_INCLUDE_DIRS}
${CMAKE_SOURCE_DIR}/include
${CMAKE_SOURCE_DIR}/src
)
link_directories(
${TQT_LIBRARY_DIRS}
)
add_definitions( -DQT )
##### qscintilla (shared)
tde_add_library( qscintilla SHARED AUTOMOC
SOURCES
qextscintilla.cpp
qextscintillaapis.cpp
qextscintillabase.cpp
qextscintillacommand.cpp
qextscintillacommandset.cpp
qextscintilladocument.cpp
qextscintillalexer.cpp
qextscintillalexerbash.cpp
qextscintillalexerbatch.cpp
qextscintillalexercpp.cpp
qextscintillalexercsharp.cpp
qextscintillalexercss.cpp
qextscintillalexerdiff.cpp
qextscintillalexerhtml.cpp
qextscintillalexeridl.cpp
qextscintillalexerjava.cpp
qextscintillalexerjavascript.cpp
qextscintillalexerlua.cpp
qextscintillalexermakefile.cpp
qextscintillalexerperl.cpp
qextscintillalexerpov.cpp
qextscintillalexerproperties.cpp
qextscintillalexerpython.cpp
qextscintillalexerruby.cpp
qextscintillalexersql.cpp
qextscintillalexertex.cpp
qextscintillamacro.cpp
qextscintillaprinter.cpp
SciListBox.cpp
PlatQt.cpp
ScintillaQt.cpp
LINK
${TQT_LIBRARIES}
src-static
VERSION 7.0.1
DESTINATION ${TQT_LIBDIR}
)
###### other data
# translations
file( GLOB _translations RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} qscintilla_*.qm )
install(
FILES ${_translations}
DESTINATION ${TQT_TRANSLATIONS_DIR}
)
# headers
file( GLOB _includes RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} qextscintilla*.h )
install(
FILES ${_includes}
DESTINATION ${TQT_INCLUDES_DIR}
)
file( GLOB _privates ${CMAKE_SOURCE_DIR}/include/*.h )
install(
FILES ${_privates}
DESTINATION ${TQT_INCLUDES_DIR}/private
)

@ -20,7 +20,6 @@
// TQScintilla; see the file LICENSE. If not, write to the Free Software // TQScintilla; see the file LICENSE. If not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
@ -326,3 +325,5 @@ void SciListBox::handleDoubleClick(TQListBoxItem *)
if (lbx && lbx -> cb_action) if (lbx && lbx -> cb_action)
lbx -> cb_action(lbx -> cb_data); lbx -> cb_action(lbx -> cb_data);
} }
#include "SciListBox.moc"

@ -3029,3 +3029,5 @@ void QextScintilla::handleUserListSelection(const char *text, int id)
{ {
emit userListActivated(id, TQString(text)); emit userListActivated(id, TQString(text));
} }
#include "qextscintilla.moc"

@ -19,7 +19,7 @@
// TQScintilla; see the file LICENSE. If not, write to the Free Software // TQScintilla; see the file LICENSE. If not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "qextscintillabase.moc"
#include <tqapplication.h> #include <tqapplication.h>
#include <tqclipboard.h> #include <tqclipboard.h>
#include <tqscrollbar.h> #include <tqscrollbar.h>

@ -442,3 +442,5 @@ void QextScintillaLexer::setPaper(const TQColor &c,int style)
emit paperChanged(c,QextScintillaBase::STYLE_DEFAULT); emit paperChanged(c,QextScintillaBase::STYLE_DEFAULT);
} }
} }
#include "qextscintillalexer.moc"

@ -367,3 +367,5 @@ void QextScintillaLexerBash::setCompactProp()
{ {
emit propertyChanged("fold.compact",(fold_compact ? "1" : "0")); emit propertyChanged("fold.compact",(fold_compact ? "1" : "0"));
} }
#include "qextscintillalexerbash.moc"

@ -196,3 +196,5 @@ TQColor QextScintillaLexerBatch::paper(int style) const
return QextScintillaLexer::paper(style); return QextScintillaLexer::paper(style);
} }
#include "qextscintillalexerbatch.moc"

@ -513,3 +513,5 @@ void QextScintillaLexerCPP::setStylePreprocProp()
{ {
emit propertyChanged("style.within.preprocessor",(style_preproc ? "1" : "0")); emit propertyChanged("style.within.preprocessor",(style_preproc ? "1" : "0"));
} }
#include "qextscintillalexercpp.moc"

@ -116,3 +116,5 @@ TQColor QextScintillaLexerCSharp::paper(int style) const
return QextScintillaLexer::paper(style); return QextScintillaLexer::paper(style);
} }
#include "qextscintillalexercsharp.moc"

@ -374,3 +374,5 @@ void QextScintillaLexerCSS::setCompactProp()
{ {
emit propertyChanged("fold.compact",(fold_compact ? "1" : "0")); emit propertyChanged("fold.compact",(fold_compact ? "1" : "0"));
} }
#include "qextscintillalexercss.moc"

@ -121,3 +121,5 @@ TQString QextScintillaLexerDiff::description(int style) const
return TQString(); return TQString();
} }
#include "qextscintillalexerdiff.moc"

@ -1130,3 +1130,5 @@ void QextScintillaLexerHTML::setPreprocProp()
{ {
emit propertyChanged("fold.html.preprocessor",(fold_preproc ? "1" : "0")); emit propertyChanged("fold.html.preprocessor",(fold_preproc ? "1" : "0"));
} }
#include "qextscintillalexerhtml.moc"

@ -100,3 +100,5 @@ TQString QextScintillaLexerIDL::description(int style) const
return QextScintillaLexerCPP::description(style); return QextScintillaLexerCPP::description(style);
} }
#include "qextscintillalexeridl.moc"

@ -57,3 +57,5 @@ const char *QextScintillaLexerJava::keywords(int set) const
"super switch synchronized this throw throws transient try var " "super switch synchronized this throw throws transient try var "
"void volatile while"; "void volatile while";
} }
#include "qextscintillalexerjava.moc"

@ -118,3 +118,5 @@ TQColor QextScintillaLexerJavaScript::paper(int style) const
return QextScintillaLexer::paper(style); return QextScintillaLexer::paper(style);
} }
#include "qextscintillalexerjavascript.moc"

@ -344,3 +344,5 @@ void QextScintillaLexerLua::setCompactProp()
{ {
emit propertyChanged("fold.compact",(fold_compact ? "1" : "0")); emit propertyChanged("fold.compact",(fold_compact ? "1" : "0"));
} }
#include "qextscintillalexerlua.moc"

@ -154,3 +154,5 @@ TQColor QextScintillaLexerMakefile::paper(int style) const
return QextScintillaLexer::paper(style); return QextScintillaLexer::paper(style);
} }
#include "qextscintillalexermakefile.moc"

@ -480,3 +480,5 @@ void QextScintillaLexerPerl::setCompactProp()
{ {
emit propertyChanged("fold.compact",(fold_compact ? "1" : "0")); emit propertyChanged("fold.compact",(fold_compact ? "1" : "0"));
} }
#include "qextscintillalexerperl.moc"

@ -486,3 +486,5 @@ void QextScintillaLexerPOV::setDirectiveProp()
{ {
emit propertyChanged("fold.directive",(fold_directives ? "1" : "0")); emit propertyChanged("fold.directive",(fold_directives ? "1" : "0"));
} }
#include "qextscintillalexerpov.moc"

@ -202,3 +202,5 @@ void QextScintillaLexerProperties::setCompactProp()
{ {
emit propertyChanged("fold.compact",(fold_compact ? "1" : "0")); emit propertyChanged("fold.compact",(fold_compact ? "1" : "0"));
} }
#include "qextscintillalexerproperties.moc"

@ -405,3 +405,5 @@ void QextScintillaLexerPython::setTabWhingeProp()
{ {
emit propertyChanged("tab.timmy.whinge.level",TQString::number(indent_warn)); emit propertyChanged("tab.timmy.whinge.level",TQString::number(indent_warn));
} }
#include "qextscintillalexerpython.moc"

@ -378,3 +378,5 @@ TQColor QextScintillaLexerRuby::paper(int style) const
return QextScintillaLexer::paper(style); return QextScintillaLexer::paper(style);
} }
#include "qextscintillalexerruby.moc"

@ -450,3 +450,5 @@ void QextScintillaLexerSQL::setBackslashEscapesProp()
{ {
emit propertyChanged("sql.backslash.escapes",(backslash_escapes ? "1" : "0")); emit propertyChanged("sql.backslash.escapes",(backslash_escapes ? "1" : "0"));
} }
#include "qextscintillalexersql.moc"

@ -204,3 +204,5 @@ TQString QextScintillaLexerTeX::description(int style) const
return TQString(); return TQString();
} }
#include "qextscintillalexertex.moc"

@ -327,3 +327,5 @@ static int fromHex(unsigned char ch)
return -1; return -1;
} }
#include "qextscintillamacro.moc"

@ -0,0 +1,102 @@
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TQT_INCLUDE_DIRS}
${CMAKE_SOURCE_DIR}/include
${CMAKE_SOURCE_DIR}/src
)
link_directories(
${TQT_LIBRARY_DIRS}
)
add_definitions( -DQT -DSCI_LEXER )
##### src (static)
tde_add_library( src STATIC_PIC
SOURCES
AutoComplete.cpp
CallTip.cpp
CellBuffer.cpp
ContractionState.cpp
CharClassify.cpp
Document.cpp
DocumentAccessor.cpp
Editor.cpp
ExternalLexer.cpp
Indicator.cpp
KeyMap.cpp
KeyWords.cpp
LexAPDL.cpp
LexAU3.cpp
LexAVE.cpp
LexAda.cpp
LexAsm.cpp
LexAsn1.cpp
LexBaan.cpp
LexBash.cpp
LexBasic.cpp
LexBullant.cpp
LexCLW.cpp
LexCPP.cpp
LexCSS.cpp
LexCaml.cpp
LexConf.cpp
LexCrontab.cpp
LexCsound.cpp
LexEScript.cpp
LexEiffel.cpp
LexErlang.cpp
LexFlagship.cpp
LexForth.cpp
LexFortran.cpp
LexGui4Cli.cpp
LexHTML.cpp
LexHaskell.cpp
LexInno.cpp
LexKix.cpp
LexLisp.cpp
LexLout.cpp
LexLua.cpp
LexMMIXAL.cpp
LexMPT.cpp
LexMSSQL.cpp
LexMatlab.cpp
LexMetapost.cpp
LexNsis.cpp
LexOpal.cpp
LexOthers.cpp
LexPB.cpp
LexPOV.cpp
LexPS.cpp
LexPascal.cpp
LexPerl.cpp
LexPython.cpp
LexRebol.cpp
LexRuby.cpp
LexSQL.cpp
LexScriptol.cpp
LexSmalltalk.cpp
LexSpecman.cpp
LexSpice.cpp
LexTADS3.cpp
LexTCL.cpp
LexTeX.cpp
LexVB.cpp
LexVHDL.cpp
LexVerilog.cpp
LexYAML.cpp
LineMarker.cpp
PropSet.cpp
RESearch.cpp
ScintillaBase.cpp
Style.cpp
StyleContext.cpp
ViewStyle.cpp
WindowAccessor.cpp
XPM.cpp
)
Loading…
Cancel
Save