commit
5d8e291c6f
5
HACKING
5
HACKING
@ -497,7 +497,6 @@ printf("Prefix: %s", GEANY_PREFIX);
|
||||
Adding a source file foo.[hc] in src/ or plugins/
|
||||
-------------------------------------------------
|
||||
* Add foo.c, foo.h to SRCS in path/Makefile.am.
|
||||
* Add foo.o to OBJS in path/makefile.win32.
|
||||
* Add path/foo.c to po/POTFILES.in (for string translation).
|
||||
|
||||
Adding a filetype
|
||||
@ -560,7 +559,6 @@ LexFoo.cxx. Try the official Scintilla project first.
|
||||
When adding a lexer, update:
|
||||
|
||||
* scintilla/Makefile.am
|
||||
* scintilla/makefile.win32
|
||||
* scintilla/src/Catalogue.cxx - add a LINK_LEXER command *manually*
|
||||
|
||||
For syntax highlighting, you will need to edit highlighting.c and
|
||||
@ -648,9 +646,8 @@ http://sf.net/projects/ctags - see the tracker.
|
||||
Method
|
||||
``````
|
||||
* Add foo.c to SRCS in Makefile.am.
|
||||
* Add foo.o to OBJS in makefile.win32.
|
||||
* Add Foo to parsers.h
|
||||
* Add TM_PARSER_FOO to tagmanager/src/tm_parser.h. The list here must follow
|
||||
* Add TM_PARSER_FOO to src/tagmanager/tm_parser.h. The list here must follow
|
||||
exactly the order in parsers.h.
|
||||
|
||||
In tagmanager/src/tm_parsers.c:
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
## Process this file with automake to produce Makefile.in
|
||||
|
||||
SUBDIRS = tagmanager scintilla src plugins icons po doc data tests
|
||||
SUBDIRS = ctags scintilla src plugins icons po doc data tests
|
||||
|
||||
AUTOMAKE_OPTIONS = 1.7
|
||||
|
||||
@ -10,9 +10,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = --enable-api-docs --enable-html-docs --enable-pdf
|
||||
|
||||
WIN32_BUILD_FILES = \
|
||||
geany_private.rc \
|
||||
geany.exe.manifest \
|
||||
win32-config.h \
|
||||
makefile.win32
|
||||
geany.exe.manifest
|
||||
|
||||
EXTRA_DIST = \
|
||||
autogen.sh \
|
||||
|
||||
@ -147,13 +147,11 @@ AC_CONFIG_FILES([
|
||||
icons/tango/32x32/Makefile
|
||||
icons/tango/48x48/Makefile
|
||||
icons/tango/scalable/Makefile
|
||||
tagmanager/Makefile
|
||||
tagmanager/ctags/Makefile
|
||||
tagmanager/mio/Makefile
|
||||
tagmanager/src/Makefile
|
||||
ctags/Makefile
|
||||
scintilla/Makefile
|
||||
scintilla/include/Makefile
|
||||
src/Makefile
|
||||
src/tagmanager/Makefile
|
||||
plugins/Makefile
|
||||
po/Makefile.in
|
||||
data/Makefile
|
||||
|
||||
86
ctags/Makefile.am
Normal file
86
ctags/Makefile.am
Normal file
@ -0,0 +1,86 @@
|
||||
AM_CPPFLAGS = \
|
||||
-I$(srcdir)/main \
|
||||
-I$(srcdir)/parsers \
|
||||
-DG_LOG_DOMAIN=\"CTags\"
|
||||
AM_CFLAGS = \
|
||||
$(GTK_CFLAGS) \
|
||||
@LIBGEANY_CFLAGS@
|
||||
|
||||
noinst_LTLIBRARIES = libctags.la
|
||||
|
||||
parsers = \
|
||||
parsers/abaqus.c \
|
||||
parsers/abc.c \
|
||||
parsers/actionscript.c \
|
||||
parsers/asciidoc.c \
|
||||
parsers/asm.c \
|
||||
parsers/basic.c \
|
||||
parsers/c.c \
|
||||
parsers/cobol.c \
|
||||
parsers/conf.c \
|
||||
parsers/css.c \
|
||||
parsers/diff.c \
|
||||
parsers/docbook.c \
|
||||
parsers/erlang.c \
|
||||
parsers/fortran.c \
|
||||
parsers/go.c \
|
||||
parsers/haskell.c \
|
||||
parsers/haxe.c \
|
||||
parsers/html.c \
|
||||
parsers/jscript.c \
|
||||
parsers/json.c \
|
||||
parsers/latex.c \
|
||||
parsers/lua.c \
|
||||
parsers/make.c \
|
||||
parsers/markdown.c \
|
||||
parsers/matlab.c \
|
||||
parsers/nsis.c \
|
||||
parsers/objc.c \
|
||||
parsers/pascal.c \
|
||||
parsers/perl.c \
|
||||
parsers/php.c \
|
||||
parsers/powershell.c \
|
||||
parsers/python.c \
|
||||
parsers/r.c \
|
||||
parsers/rest.c \
|
||||
parsers/ruby.c \
|
||||
parsers/rust.c \
|
||||
parsers/sh.c \
|
||||
parsers/sql.c \
|
||||
parsers/tcl.c \
|
||||
parsers/txt2tags.c \
|
||||
parsers/verilog.c \
|
||||
parsers/vhdl.c
|
||||
|
||||
libctags_la_SOURCES = \
|
||||
main/args.c \
|
||||
main/args.h \
|
||||
main/ctags.c \
|
||||
main/ctags.h \
|
||||
main/entry.c \
|
||||
main/entry.h \
|
||||
main/general.h \
|
||||
main/get.c \
|
||||
main/get.h \
|
||||
main/keyword.c \
|
||||
main/keyword.h \
|
||||
main/lregex.c \
|
||||
main/main.h \
|
||||
main/mio.c \
|
||||
main/mio.h \
|
||||
main/nestlevel.c \
|
||||
main/nestlevel.h \
|
||||
main/options.c \
|
||||
main/options.h \
|
||||
main/parse.c \
|
||||
main/parse.h \
|
||||
main/parsers.h \
|
||||
main/read.c \
|
||||
main/read.h \
|
||||
main/sort.c \
|
||||
main/sort.h \
|
||||
main/strlist.c \
|
||||
main/strlist.h \
|
||||
main/vstring.c \
|
||||
main/vstring.h \
|
||||
$(parsers)
|
||||
@ -15,8 +15,7 @@
|
||||
*/
|
||||
#include "general.h" /* must always come first */
|
||||
|
||||
#include <mio/mio.h>
|
||||
|
||||
#include "mio.h"
|
||||
#include "vstring.h"
|
||||
|
||||
/*
|
||||
@ -18,7 +18,6 @@
|
||||
|
||||
#include <string.h>
|
||||
#include <glib.h>
|
||||
#include <mio/mio.h>
|
||||
|
||||
#ifdef HAVE_REGCOMP
|
||||
# include <ctype.h>
|
||||
@ -28,6 +27,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include "mio.h"
|
||||
#include "main.h"
|
||||
#include "entry.h"
|
||||
#include "parse.h"
|
||||
1063
ctags/main/mio.c
Normal file
1063
ctags/main/mio.c
Normal file
File diff suppressed because it is too large
Load Diff
178
ctags/main/mio.h
Normal file
178
ctags/main/mio.h
Normal file
@ -0,0 +1,178 @@
|
||||
/*
|
||||
* MIO, an I/O abstraction layer replicating C file I/O API.
|
||||
* Copyright (C) 2010 Colomban Wendling <ban@herbesfolles.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef MIO_H
|
||||
#define MIO_H
|
||||
|
||||
#include "general.h" /* must always come first */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
|
||||
/**
|
||||
* MIOType:
|
||||
* @MIO_TYPE_FILE: #MIO object works on a file
|
||||
* @MIO_TYPE_MEMORY: #MIO object works in-memory
|
||||
*
|
||||
* Existing implementations.
|
||||
*/
|
||||
enum _MIOType {
|
||||
MIO_TYPE_FILE,
|
||||
MIO_TYPE_MEMORY
|
||||
};
|
||||
|
||||
typedef enum _MIOType MIOType;
|
||||
typedef struct _MIO MIO;
|
||||
typedef struct _MIOPos MIOPos;
|
||||
|
||||
/**
|
||||
* MIOReallocFunc:
|
||||
* @ptr: Pointer to the memory to resize
|
||||
* @size: New size of the memory pointed by @ptr
|
||||
*
|
||||
* A function following the realloc() semantic.
|
||||
*
|
||||
* Returns: A pointer to the start of the new memory, or %NULL on failure.
|
||||
*/
|
||||
typedef void *(* MIOReallocFunc) (void * ptr, size_t size);
|
||||
|
||||
/**
|
||||
* MIOFOpenFunc:
|
||||
* @filename: The filename to open
|
||||
* @mode: fopen() modes for opening @filename
|
||||
*
|
||||
* A function following the fclose() semantic, used to close a #FILE
|
||||
* object.
|
||||
*
|
||||
* Returns: A new #FILE object, or %NULL on failure
|
||||
*/
|
||||
typedef FILE *(* MIOFOpenFunc) (const char *filename, const char *mode);
|
||||
|
||||
/**
|
||||
* MIOFCloseFunc:
|
||||
* @fp: An opened #FILE object
|
||||
*
|
||||
* A function following the fclose() semantic, used to close a #FILE
|
||||
* object.
|
||||
*
|
||||
* Returns: 0 on success, EOF otherwise.
|
||||
*/
|
||||
typedef int (* MIOFCloseFunc) (FILE *fp);
|
||||
|
||||
/**
|
||||
* MIODestroyNotify:
|
||||
* @data: Data element being destroyed
|
||||
*
|
||||
* Specifies the type of function which is called when a data element is
|
||||
* destroyed. It is passed the pointer to the data element and should free any
|
||||
* memory and resources allocated for it.
|
||||
*/
|
||||
typedef void (*MIODestroyNotify) (void *data);
|
||||
|
||||
/**
|
||||
* MIOPos:
|
||||
*
|
||||
* An object representing the state of a #MIO stream. This object can be
|
||||
* statically allocated but all its fields are private and should not be
|
||||
* accessed directly.
|
||||
*/
|
||||
struct _MIOPos {
|
||||
/*< private >*/
|
||||
unsigned int type;
|
||||
#ifdef MIO_DEBUG
|
||||
void *tag;
|
||||
#endif
|
||||
union {
|
||||
fpos_t file;
|
||||
size_t mem;
|
||||
} impl;
|
||||
};
|
||||
|
||||
/**
|
||||
* MIO:
|
||||
*
|
||||
* An object representing a #MIO stream. No assumptions should be made about
|
||||
* what compose this object, and none of its fields should be accessed directly.
|
||||
*/
|
||||
struct _MIO {
|
||||
/*< private >*/
|
||||
unsigned int type;
|
||||
union {
|
||||
struct {
|
||||
FILE *fp;
|
||||
MIOFCloseFunc close_func;
|
||||
} file;
|
||||
struct {
|
||||
unsigned char *buf;
|
||||
int ungetch;
|
||||
size_t pos;
|
||||
size_t size;
|
||||
size_t allocated_size;
|
||||
MIOReallocFunc realloc_func;
|
||||
MIODestroyNotify free_func;
|
||||
boolean error;
|
||||
boolean eof;
|
||||
} mem;
|
||||
} impl;
|
||||
};
|
||||
|
||||
|
||||
MIO *mio_new_file (const char *filename, const char *mode);
|
||||
MIO *mio_new_file_full (const char *filename,
|
||||
const char *mode,
|
||||
MIOFOpenFunc open_func,
|
||||
MIOFCloseFunc close_func);
|
||||
MIO *mio_new_fp (FILE *fp, MIOFCloseFunc close_func);
|
||||
MIO *mio_new_memory (unsigned char *data,
|
||||
size_t size,
|
||||
MIOReallocFunc realloc_func,
|
||||
MIODestroyNotify free_func);
|
||||
int mio_free (MIO *mio);
|
||||
FILE *mio_file_get_fp (MIO *mio);
|
||||
unsigned char *mio_memory_get_data (MIO *mio, size_t *size);
|
||||
size_t mio_read (MIO *mio,
|
||||
void *ptr,
|
||||
size_t size,
|
||||
size_t nmemb);
|
||||
size_t mio_write (MIO *mio,
|
||||
const void *ptr,
|
||||
size_t size,
|
||||
size_t nmemb);
|
||||
int mio_getc (MIO *mio);
|
||||
char *mio_gets (MIO *mio, char *s, size_t size);
|
||||
int mio_ungetc (MIO *mio, int ch);
|
||||
int mio_putc (MIO *mio, int c);
|
||||
int mio_puts (MIO *mio, const char *s);
|
||||
|
||||
int mio_vprintf (MIO *mio, const char *format, va_list ap) PRINTF (2, 0);
|
||||
int mio_printf (MIO *mio, const char *format, ...) PRINTF (2, 3);
|
||||
|
||||
void mio_clearerr (MIO *mio);
|
||||
int mio_eof (MIO *mio);
|
||||
int mio_error (MIO *mio);
|
||||
int mio_seek (MIO *mio, long offset, int whence);
|
||||
long mio_tell (MIO *mio);
|
||||
void mio_rewind (MIO *mio);
|
||||
int mio_getpos (MIO *mio, MIOPos *pos);
|
||||
int mio_setpos (MIO *mio, MIOPos *pos);
|
||||
int mio_flush (MIO *mio);
|
||||
|
||||
#endif /* MIO_H */
|
||||
@ -15,9 +15,9 @@
|
||||
#include "general.h" /* must always come first */
|
||||
|
||||
#include <string.h>
|
||||
#include <mio/mio.h>
|
||||
|
||||
|
||||
#include "mio.h"
|
||||
#include "entry.h"
|
||||
#include "main.h"
|
||||
#define OPTION_WRITE
|
||||
@ -14,7 +14,7 @@
|
||||
#define _PARSERS_H
|
||||
|
||||
/* Add the name of any new parser definition function here */
|
||||
/* keep tagmanager/src/tm_parser.h in sync */
|
||||
/* keep src/tagmanager/tm_parser.h in sync */
|
||||
#define PARSER_LIST \
|
||||
CParser, \
|
||||
CppParser, \
|
||||
@ -17,8 +17,8 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <mio/mio.h>
|
||||
|
||||
#include "mio.h"
|
||||
#include "parse.h"
|
||||
#include "vstring.h"
|
||||
|
||||
@ -16,8 +16,8 @@
|
||||
|
||||
#include <string.h>
|
||||
#include <setjmp.h>
|
||||
#include <mio/mio.h>
|
||||
|
||||
#include "mio.h"
|
||||
#include "entry.h"
|
||||
#include "get.h"
|
||||
#include "keyword.h"
|
||||
@ -17,8 +17,8 @@
|
||||
#include <limits.h>
|
||||
#include <ctype.h> /* to define tolower () */
|
||||
#include <setjmp.h>
|
||||
#include <mio/mio.h>
|
||||
|
||||
#include "mio.h"
|
||||
#include "entry.h"
|
||||
#include "keyword.h"
|
||||
#include "main.h"
|
||||
@ -19,11 +19,11 @@
|
||||
#include "general.h" /* must always come first */
|
||||
#include <ctype.h> /* to define isalpha () */
|
||||
#include <string.h>
|
||||
#include <mio/mio.h>
|
||||
#ifdef DEBUG
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
#include "mio.h"
|
||||
#include "keyword.h"
|
||||
#include "parse.h"
|
||||
#include "read.h"
|
||||
@ -794,12 +794,12 @@ INPUT = @top_srcdir@/src/ \
|
||||
@top_srcdir@/doc/stash-example.c \
|
||||
@top_srcdir@/doc/stash-gui-example.c \
|
||||
@top_srcdir@/plugins/geanyplugin.h \
|
||||
@top_srcdir@/tagmanager/src/tm_source_file.c \
|
||||
@top_srcdir@/tagmanager/src/tm_source_file.h \
|
||||
@top_srcdir@/tagmanager/src/tm_workspace.c \
|
||||
@top_srcdir@/tagmanager/src/tm_workspace.h \
|
||||
@top_srcdir@/tagmanager/src/tm_tag.h \
|
||||
@top_srcdir@/tagmanager/src/tm_parser.h
|
||||
@top_srcdir@/src/tagmanager/tm_source_file.c \
|
||||
@top_srcdir@/src/tagmanager/tm_source_file.h \
|
||||
@top_srcdir@/src/tagmanager/tm_workspace.c \
|
||||
@top_srcdir@/src/tagmanager/tm_workspace.h \
|
||||
@top_srcdir@/src/tagmanager/tm_tag.h \
|
||||
@top_srcdir@/src/tagmanager/tm_parser.h
|
||||
|
||||
# This tag can be used to specify the character encoding of the source files
|
||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
|
||||
|
||||
@ -41,8 +41,7 @@ EXTRA_DIST = \
|
||||
geany.html \
|
||||
geany.css \
|
||||
geany.txt \
|
||||
geany.1 \
|
||||
makefile.win32
|
||||
geany.1
|
||||
|
||||
# HTML user manual and hacking file
|
||||
if WITH_RST2HTML
|
||||
@ -99,10 +98,10 @@ doxygen_dependencies = \
|
||||
$(doxygen_sources) \
|
||||
$(top_srcdir)/src/*.[ch] \
|
||||
$(top_srcdir)/plugins/geanyplugin.h \
|
||||
$(top_srcdir)/tagmanager/src/tm_source_file.[ch] \
|
||||
$(top_srcdir)/tagmanager/src/tm_workspace.[ch] \
|
||||
$(top_srcdir)/tagmanager/src/tm_tag.h \
|
||||
$(top_srcdir)/tagmanager/src/tm_parser.h
|
||||
$(top_srcdir)/src/tagmanager/tm_source_file.[ch] \
|
||||
$(top_srcdir)/src/tagmanager/tm_workspace.[ch] \
|
||||
$(top_srcdir)/src/tagmanager/tm_tag.h \
|
||||
$(top_srcdir)/src/tagmanager/tm_parser.h
|
||||
|
||||
Doxyfile.stamp: Doxyfile $(doxygen_dependencies)
|
||||
$(AM_V_GEN)$(DOXYGEN) Doxyfile && echo "" > $@
|
||||
|
||||
@ -1,36 +0,0 @@
|
||||
# Optional documentation generation.
|
||||
# localwin32.mk is an optional file to override make variables.
|
||||
# Use localwin32.mk instead of editing variables as it is included in sub
|
||||
# makefiles.
|
||||
# Use localwin32.mk to override RST2HTML, DOXYGEN
|
||||
|
||||
RST2HTML=python rst2html.py
|
||||
SED=sed
|
||||
DOXYGEN=doxygen
|
||||
CP = copy /y
|
||||
-include ../localwin32.mk
|
||||
|
||||
ifdef MSYS
|
||||
CP = cp
|
||||
endif
|
||||
|
||||
# no PDF rule yet
|
||||
all: html api-doc
|
||||
|
||||
html: geany.html hacking.html
|
||||
|
||||
geany.html: geany.txt geany.css
|
||||
$(RST2HTML) -stg --stylesheet=geany.css $< $@
|
||||
|
||||
hacking.html: ../HACKING geany.css
|
||||
$(RST2HTML) -stg --stylesheet=geany.css $< $@
|
||||
|
||||
# FIXME: we should also replace @VERSION@
|
||||
Doxyfile: Doxyfile.in
|
||||
$(CP) $< $@
|
||||
$(SED) -i 's/@top_builddir@/../g' $@
|
||||
$(SED) -i 's/@top_srcdir@/../g' $@
|
||||
|
||||
api-doc: Doxyfile
|
||||
$(DOXYGEN)
|
||||
|
||||
@ -8,8 +8,7 @@ and summarize the interesting ones. Use `git log --author='name'`
|
||||
to filter commits by a particular developer name.
|
||||
|
||||
Ensure version numbers are all updated in:
|
||||
configure.ac geany_private.rc geany.exe.manifest
|
||||
win32-config.h doc/geany.txt
|
||||
configure.ac geany_private.rc geany.exe.manifest doc/geany.txt
|
||||
Ensure release date is updated in:
|
||||
NEWS doc/geany.txt doc/geany.1.in
|
||||
Check GEANY_CODENAME is set in src/geany.h.
|
||||
|
||||
@ -1,71 +0,0 @@
|
||||
# See http://www.geany.org/Support/BuildingOnWin32
|
||||
# Running make creates config.h then calls the sub makefiles.
|
||||
#
|
||||
# Other targets are:
|
||||
# clean: clean all generated files
|
||||
# install: install to DESTDIR
|
||||
#
|
||||
# localwin32.mk is an optional file to override make variables.
|
||||
# Use localwin32.mk instead of editing variables as it is included in sub
|
||||
# makefiles.
|
||||
# For MSYS set MSYS=1.
|
||||
# By default this should work in a Windows command prompt (cmd.exe).
|
||||
|
||||
WINDRES = windres.exe
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
CP = copy /y
|
||||
RM = del
|
||||
MKDIR = mkdir
|
||||
# $/ is used as a portable directory separator
|
||||
# strip is used to prevent line wrap
|
||||
/ := $(strip \)
|
||||
DESTDIR = C:/Program Files/Geany
|
||||
-include localwin32.mk
|
||||
|
||||
ifdef MSYS
|
||||
CP = cp
|
||||
RM = rm -f
|
||||
/ = /
|
||||
endif
|
||||
|
||||
all: config.h
|
||||
$(MAKE) -C tagmanager/ctags -f makefile.win32
|
||||
$(MAKE) -C tagmanager/mio -f makefile.win32
|
||||
$(MAKE) -C tagmanager/src -f makefile.win32
|
||||
$(MAKE) -C scintilla/gtk -f makefile.win32
|
||||
$(MAKE) -C plugins -f makefile.win32
|
||||
$(MAKE) -C src -f makefile.win32
|
||||
|
||||
config.h: win32-config.h
|
||||
$(CP) $< $@
|
||||
|
||||
# used by src/makefile.win32 to avoid del ../file which is an error
|
||||
clean-local:
|
||||
-$(RM) geany_private.res geany.exe
|
||||
|
||||
clean:
|
||||
$(MAKE) -C tagmanager/ctags -f makefile.win32 clean
|
||||
$(MAKE) -C tagmanager/mio -f makefile.win32 clean
|
||||
$(MAKE) -C tagmanager/src -f makefile.win32 clean
|
||||
$(MAKE) -C scintilla/gtk -f makefile.win32 clean
|
||||
$(MAKE) -C plugins -f makefile.win32 clean
|
||||
$(MAKE) -C src -f makefile.win32 clean
|
||||
|
||||
.PHONY: all clean clean-local install
|
||||
|
||||
# likely requires admin privileges
|
||||
# mkdir output is ignored in case dir exists
|
||||
# 'copy' seems to only accept / in the destination
|
||||
install:
|
||||
-$(MKDIR) "$(DESTDIR)"
|
||||
-$(MKDIR) "$(DESTDIR)/bin"
|
||||
$(CP) geany.exe "$(DESTDIR)/bin"
|
||||
-$(MKDIR) "$(DESTDIR)/lib"
|
||||
$(CP) plugins$/*.dll "$(DESTDIR)/lib"
|
||||
-$(MKDIR) "$(DESTDIR)/data"
|
||||
ifdef MSYS
|
||||
cp -r data "$(DESTDIR)"
|
||||
else
|
||||
xcopy /s /y data "$(DESTDIR)/data"
|
||||
endif
|
||||
@ -1,7 +1,6 @@
|
||||
# Adapted from Pidgin's plugins/Makefile.am, thanks
|
||||
|
||||
EXTRA_DIST = \
|
||||
makefile.win32 \
|
||||
demoproxytest.px
|
||||
|
||||
plugindir = $(libdir)/geany
|
||||
@ -74,7 +73,7 @@ endif
|
||||
AM_CPPFLAGS += \
|
||||
-DGTK \
|
||||
-I$(top_srcdir)/src \
|
||||
-I$(top_srcdir)/tagmanager/src \
|
||||
-I$(top_srcdir)/src/tagmanager \
|
||||
-I$(top_srcdir)/scintilla/include \
|
||||
$(GTK_CFLAGS) \
|
||||
$(PLUGIN_CFLAGS)
|
||||
|
||||
@ -1,80 +0,0 @@
|
||||
# Adapted from Pidgin's plugins/Makefile.am, thanks
|
||||
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
PREFIX = C:/libs
|
||||
RM = del
|
||||
-include ../localwin32.mk
|
||||
|
||||
ifdef MSYS
|
||||
RM = rm -f
|
||||
endif
|
||||
|
||||
.SUFFIXES: .c .o .dll
|
||||
|
||||
GTK_INCLUDES= \
|
||||
-I$(PREFIX)/include/gtk-2.0 \
|
||||
-I$(PREFIX)/lib/gtk-2.0/include \
|
||||
-I$(PREFIX)/include/atk-1.0 \
|
||||
-I$(PREFIX)/include/cairo \
|
||||
-I$(PREFIX)/include/gdk-pixbuf-2.0 \
|
||||
-I$(PREFIX)/include/pango-1.0 \
|
||||
-I$(PREFIX)/include/glib-2.0 \
|
||||
-I$(PREFIX)/lib/glib-2.0/include \
|
||||
-I$(PREFIX)/include \
|
||||
-I$(PREFIX)/include/gettext
|
||||
|
||||
INCLUDEDIRS= -I.. \
|
||||
-I../src \
|
||||
-I../scintilla/include \
|
||||
-I../tagmanager/src \
|
||||
$(GTK_INCLUDES)
|
||||
|
||||
ALL_GTK_LIBS= \
|
||||
-L"$(PREFIX)/lib" \
|
||||
-lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 \
|
||||
-lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl
|
||||
|
||||
CBASEFLAGS=-Wall -pipe -mms-bitfields -DHAVE_CONFIG_H
|
||||
ifdef DEBUG
|
||||
CFLAGS=-O0 -g $(CBASEFLAGS)
|
||||
else
|
||||
CFLAGS=-O2 $(CBASEFLAGS)
|
||||
endif
|
||||
CFLAGS += -DGTK
|
||||
|
||||
ifndef GTK210
|
||||
ALL_GTK_LIBS += -liconv
|
||||
endif
|
||||
|
||||
.PHONY: all clean plugins
|
||||
|
||||
all: plugins
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) $(DEFINES) $(INCLUDEDIRS) -o $@ -c $<
|
||||
|
||||
.o.dll:
|
||||
$(CC) -shared $< $(ALL_GTK_LIBS) $(DLL_LD_FLAGS) -o $@
|
||||
|
||||
plugins: \
|
||||
htmlchars.dll \
|
||||
demoplugin.dll \
|
||||
classbuilder.dll \
|
||||
export.dll \
|
||||
saveactions.dll \
|
||||
splitwindow.dll \
|
||||
filebrowser.dll
|
||||
|
||||
|
||||
clean:
|
||||
-$(RM) deps.mak *.o *.dll
|
||||
|
||||
deps.mak:
|
||||
$(CC) -MM $(CFLAGS) $(DEFINES) $(INCLUDEDIRS) *.c >deps.mak
|
||||
|
||||
# Generate header dependencies with "make deps.mak"
|
||||
include deps.mak
|
||||
|
||||
..\localwin32.mk:
|
||||
echo # Set local variables here >$@
|
||||
@ -153,5 +153,4 @@ marshallers: gtk/scintilla-marshal.list
|
||||
glib-genmarshal --prefix scintilla_marshal gtk/scintilla-marshal.list --header > gtk/scintilla-marshal.h
|
||||
glib-genmarshal --prefix scintilla_marshal gtk/scintilla-marshal.list --body > gtk/scintilla-marshal.c
|
||||
|
||||
EXTRA_DIST=gtk/scintilla-marshal.list License.txt README version.txt \
|
||||
gtk/makefile.win32
|
||||
EXTRA_DIST=gtk/scintilla-marshal.list License.txt README version.txt
|
||||
|
||||
@ -1,80 +0,0 @@
|
||||
# Make file for Scintilla on Linux or compatible OS
|
||||
# Copyright 1998-2010 by Neil Hodgson <neilh@scintilla.org>
|
||||
# The License.txt file describes the conditions under which this software may be distributed.
|
||||
# This makefile assumes GCC 4.3 is used and changes will be needed to use other compilers.
|
||||
# GNU make does not like \r\n line endings so should be saved to CVS in binary form.
|
||||
# Builds for GTK+ 2 and no longer supports GTK+ 1.
|
||||
# Also works with ming32-make on Windows.
|
||||
|
||||
.SUFFIXES: .cxx .c .o .h .a
|
||||
CXX = g++
|
||||
CC = gcc
|
||||
AR = ar
|
||||
|
||||
ifdef GTK3
|
||||
GTKVERSION=gtk+-3.0
|
||||
else
|
||||
GTKVERSION=gtk+-2.0
|
||||
endif
|
||||
|
||||
RANLIB = ranlib
|
||||
PREFIX = C:/libs
|
||||
RM = del
|
||||
-include ../../localwin32.mk
|
||||
|
||||
ifdef MSYS
|
||||
RM = rm -f
|
||||
endif
|
||||
|
||||
COMPLIB=../scintilla.a
|
||||
|
||||
vpath %.h ../src ../include ../lexlib
|
||||
vpath %.cxx ../src ../lexlib ../lexers
|
||||
|
||||
INCLUDEDIRS=-I ../include -I ../src -I ../lexlib
|
||||
CXXBASEFLAGS=-Wall -Wno-missing-braces -Wno-char-subscripts \
|
||||
-DGTK -DSCI_LEXER -DNO_CXX11_REGEX \
|
||||
$(INCLUDEDIRS) \
|
||||
-DGEANY_EXPORT_SYMBOL="__declspec(dllexport)" \
|
||||
-DGEANY_API_SYMBOL=GEANY_EXPORT_SYMBOL
|
||||
|
||||
|
||||
ifdef DEBUG
|
||||
CTFLAGS=-DDEBUG -g -O0 $(CXXBASEFLAGS)
|
||||
else
|
||||
CTFLAGS=-DNDEBUG -Os $(CXXBASEFLAGS)
|
||||
endif
|
||||
|
||||
CFLAGS:=$(CTFLAGS)
|
||||
CXXTFLAGS:=--std=c++0x $(CTFLAGS) $(REFLAGS)
|
||||
|
||||
CONFIGFLAGS:=$(shell pkg-config --cflags $(GTKVERSION))
|
||||
MARSHALLER=scintilla-marshal.o
|
||||
|
||||
.cxx.o:
|
||||
$(CXX) $(CONFIGFLAGS) $(CXXTFLAGS) $(CXXFLAGS) -c $<
|
||||
.c.o:
|
||||
$(CC) $(CONFIGFLAGS) $(CFLAGS) -w -c $<
|
||||
|
||||
LEXOBJS:=$(addsuffix .o,$(basename $(notdir $(wildcard ../lexers/Lex*.cxx))))
|
||||
|
||||
all: $(COMPLIB)
|
||||
|
||||
clean:
|
||||
-$(RM) deps.mak *.o $(COMPLIB) *.plist
|
||||
|
||||
deps.mak:
|
||||
$(CXX) -MM $(CONFIGFLAGS) $(CXXTFLAGS) *.cxx ../src/*.cxx ../lexlib/*.cxx ../lexers/*.cxx >deps.mak
|
||||
|
||||
$(COMPLIB): Accessor.o CharacterSet.o LexerBase.o LexerModule.o LexerSimple.o StyleContext.o WordList.o \
|
||||
CharClassify.o Decoration.o Document.o PerLine.o Catalogue.o CallTip.o CaseConvert.o CaseFolder.o \
|
||||
ScintillaBase.o ContractionState.o EditModel.o Editor.o EditView.o ExternalLexer.o MarginView.o \
|
||||
PropSetSimple.o PlatGTK.o \
|
||||
KeyMap.o LineMarker.o PositionCache.o ScintillaGTK.o CellBuffer.o CharacterCategory.o ViewStyle.o \
|
||||
RESearch.o RunStyles.o Selection.o Style.o Indicator.o AutoComplete.o UniConversion.o XPM.o \
|
||||
$(MARSHALLER) $(LEXOBJS)
|
||||
$(AR) rc $@ $^
|
||||
$(RANLIB) $@
|
||||
|
||||
# Generate header dependencies with "make deps.mak"
|
||||
include deps.mak
|
||||
@ -18,13 +18,13 @@ import re
|
||||
UPSTREAM_TAG_DEFINITION = 'http://doc.php.net/downloads/json/php_manual_en.json'
|
||||
PROTOTYPE_RE = r'^(?P<return_type>.*) {tag_name}(?P<arg_list>\(.*\))$'
|
||||
|
||||
# (from tagmanager/src/tm_tag.c:90)
|
||||
# (from src/tagmanager/tm_tag.c:90)
|
||||
TA_NAME = 200
|
||||
TA_TYPE = 204
|
||||
TA_ARGLIST = 205
|
||||
TA_SCOPE = 206
|
||||
TA_VARTYPE = 207
|
||||
# TMTagType (tagmanager/src/tm_tag.h:49)
|
||||
# TMTagType (src/tagmanager/tm_tag.h:49)
|
||||
TYPE_CLASS = 1
|
||||
TYPE_FUNCTION = 16
|
||||
TYPE_MEMBER = 64
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
## Process this file with automake to produce Makefile.in
|
||||
|
||||
SUBDIRS = tagmanager
|
||||
|
||||
EXTRA_DIST = \
|
||||
gb.c \
|
||||
@ -9,13 +10,12 @@ EXTRA_DIST = \
|
||||
filetypesprivate.h \
|
||||
keybindingsprivate.h \
|
||||
pluginprivate.h \
|
||||
projectprivate.h \
|
||||
makefile.win32
|
||||
projectprivate.h
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir) \
|
||||
-I$(top_srcdir)/scintilla/include \
|
||||
-I$(top_srcdir)/tagmanager/src \
|
||||
-I$(srcdir)/tagmanager \
|
||||
-DGTK \
|
||||
-DGEANY_PRIVATE \
|
||||
-DG_LOG_DOMAIN=\""Geany"\" \
|
||||
@ -120,7 +120,7 @@ libgeany_la_LDFLAGS = @LIBGEANY_LDFLAGS@
|
||||
|
||||
libgeany_la_LIBADD = \
|
||||
$(top_builddir)/scintilla/libscintilla.la \
|
||||
$(top_builddir)/tagmanager/src/libtagmanager.la \
|
||||
$(builddir)/tagmanager/libtagmanager.la \
|
||||
@GTK_LIBS@ \
|
||||
@GTHREAD_LIBS@ \
|
||||
$(MAC_INTEGRATION_LIBS) \
|
||||
|
||||
@ -142,7 +142,7 @@ typedef struct GeanyFiletype
|
||||
{
|
||||
GeanyFiletypeID id; /**< Index in @ref filetypes. */
|
||||
/* Represents the TMParserType of tagmanager (see the table
|
||||
* in tagmanager/src/tm_parser.h). */
|
||||
* in src/tagmanager/tm_parser.h). */
|
||||
TMParserType lang;
|
||||
/** Untranslated short name, such as "C", "None".
|
||||
* Must not be translated as it's used for hash table lookups - use
|
||||
|
||||
@ -1,99 +0,0 @@
|
||||
# Note: PACKAGE_DATA_DIR and PACKAGE_LOCALE_DIR are no longer used on Windows.
|
||||
|
||||
DEFINES = -DHAVE_CONFIG_H \
|
||||
-DGEANY_PRIVATE \
|
||||
-DGEANY_DATADIR=\"data\" \
|
||||
-DGEANY_LOCALEDIR=\"\" \
|
||||
-DGEANY_LIBDIR=\"\" \
|
||||
-DGEANY_PREFIX=\"\" \
|
||||
-DGTK \
|
||||
-DGEANY_EXPORT_SYMBOL="__declspec(dllexport)" \
|
||||
-DGEANY_API_SYMBOL=GEANY_EXPORT_SYMBOL
|
||||
|
||||
.SUFFIXES: .c .o .h .a
|
||||
WINDRES = windres.exe
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
RES = ../geany_private.res
|
||||
TARGET = ../geany.exe
|
||||
PREFIX = C:/libs
|
||||
RM = del
|
||||
-include ../localwin32.mk
|
||||
|
||||
ifdef MSYS
|
||||
RM = rm -f
|
||||
endif
|
||||
|
||||
GTK_INCLUDES= \
|
||||
-I$(PREFIX)/include/gtk-2.0 \
|
||||
-I$(PREFIX)/lib/gtk-2.0/include \
|
||||
-I$(PREFIX)/include/atk-1.0 \
|
||||
-I$(PREFIX)/include/cairo \
|
||||
-I$(PREFIX)/include/gdk-pixbuf-2.0 \
|
||||
-I$(PREFIX)/include/pango-1.0 \
|
||||
-I$(PREFIX)/include/glib-2.0 \
|
||||
-I$(PREFIX)/lib/glib-2.0/include \
|
||||
-I$(PREFIX)/include \
|
||||
-I$(PREFIX)/include/gettext
|
||||
|
||||
INCLUDEDIRS= -I.. \
|
||||
-I../scintilla/include \
|
||||
-I../tagmanager/mio \
|
||||
-I../tagmanager/src \
|
||||
$(GTK_INCLUDES)
|
||||
|
||||
ALL_GTK_LIBS= \
|
||||
-L"$(PREFIX)/lib" \
|
||||
-lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 \
|
||||
-lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lgthread-2.0 -lintl \
|
||||
-lcairo -lpangocairo-1.0 -lgio-2.0
|
||||
# these things are for GTK >= 2.8
|
||||
# (should be same as with MSYS: pkg-config --libs gtk+-2.0 gthread-2.0)
|
||||
#"$(PREFIX)/lib/libcairo.dll.a" \
|
||||
#"$(PREFIX)/lib/asprintf.lib" \
|
||||
#"$(PREFIX)/lib/charset.lib" \
|
||||
|
||||
WIN_LIBS=-mwindows -lole32 -luuid -lwsock32
|
||||
|
||||
CBASEFLAGS=-Wall -pipe -mms-bitfields $(DEFINES) $(INCLUDEDIRS)
|
||||
ifdef DEBUG
|
||||
CFLAGS=-O0 -g $(CBASEFLAGS)
|
||||
DEFINES += -DGEANY_DEBUG
|
||||
else
|
||||
CFLAGS=-O2 $(CBASEFLAGS)
|
||||
endif
|
||||
|
||||
OBJS = about.o build.o callbacks.o dialogs.o document.o editor.o encodings.o filetypes.o \
|
||||
geanyentryaction.o geanymenubuttonaction.o geanyobject.o geanywraplabel.o highlighting.o \
|
||||
keybindings.o keyfile.o log.o main.o msgwindow.o navqueue.o notebook.o \
|
||||
plugins.o pluginutils.o prefs.o printing.o project.o sciwrappers.o search.o \
|
||||
socket.o spawn.o stash.o symbols.o templates.o toolbar.o tools.o sidebar.o \
|
||||
ui_utils.o utils.o win32.o
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) -c $<
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
$(RES): ../geany_private.rc ../icons/geany.ico
|
||||
$(WINDRES) -i $< --input-format=rc -o $@ -O coff
|
||||
|
||||
# this calls parent clean-local target because del ../file won't work
|
||||
clean:
|
||||
-$(RM) deps.mak *.o
|
||||
$(MAKE) -C .. -f makefile.win32 clean-local
|
||||
|
||||
STLIBS = ../scintilla/scintilla.a ../tagmanager/ctags/ctags.a \
|
||||
../tagmanager/mio/mio.a ../tagmanager/src/tagmanager.a
|
||||
|
||||
$(TARGET): $(OBJS) $(RES) $(STLIBS)
|
||||
$(CXX) $(OBJS) $(RES) -o $(TARGET) $(STLIBS) $(ALL_GTK_LIBS) $(WIN_LIBS)
|
||||
|
||||
deps.mak:
|
||||
$(CC) -MM $(CFLAGS) *.c >deps.mak
|
||||
|
||||
# Generate header dependencies with "make deps.mak"
|
||||
include deps.mak
|
||||
|
||||
..\localwin32.mk:
|
||||
echo # Set local variables here >$@
|
||||
@ -1,16 +1,12 @@
|
||||
AM_CPPFLAGS = \
|
||||
-I$(srcdir) \
|
||||
-I$(srcdir)/.. \
|
||||
-I$(srcdir)/../ctags \
|
||||
-I$(top_srcdir)/ctags/main \
|
||||
-DGEANY_PRIVATE \
|
||||
-DG_LOG_DOMAIN=\"Tagmanager\"
|
||||
AM_CFLAGS = \
|
||||
$(GTK_CFLAGS) \
|
||||
@LIBGEANY_CFLAGS@
|
||||
|
||||
EXTRA_DIST = \
|
||||
makefile.win32
|
||||
|
||||
noinst_LTLIBRARIES = libtagmanager.la
|
||||
|
||||
tagmanager_includedir = $(includedir)/geany/tagmanager
|
||||
@ -33,4 +29,4 @@ libtagmanager_la_SOURCES =\
|
||||
tm_ctags_wrappers.h \
|
||||
tm_ctags_wrappers.c
|
||||
|
||||
libtagmanager_la_LIBADD = ../ctags/libctags.la $(GTK_LIBS)
|
||||
libtagmanager_la_LIBADD = $(top_builddir)/ctags/libctags.la $(GTK_LIBS)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user