Age | Commit message (Collapse) | Author |
|
Recursivley walk the include directories located
inside the current module's directory, since includes
are basically paths relative to the include directories
and can refer to files in subdirectories of the include
path, like e.g.
#include <extended/AccessibleBrowseBoxBase.hxx>
in 'accessibility/source/extended/AccessibleBrowseBoxBase.cxx'.
This way, such header files are added to the .pro files
and are thus e.g. shown in Qt Creator's project view
and can be found by using 'a <FILEANME>' in the Locator.
Change-Id: Id74f971b2ffee82203f74a4d444c41166c671920
Reviewed-on: https://gerrit.libreoffice.org/75628
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Absolute paths in files created by GbuildToJson
in Cygwin environment are Windows paths
(like "C:/....'), while relative paths in the Python
program executed in Cygwin are treated as Unix paths
('/cygdrive/c/....') which caused wrong relative paths to
be generated by the call to 'os.relpath'. It would walk up to
the root of the Windows path and then walk down the tree in the
Unix file system path again.
This converts the paths to absolute Windows paths first to avoid
this issue.
Change-Id: I2e3e6926e312d64aa18067933a5903ac7ad5d31a
Reviewed-on: https://gerrit.libreoffice.org/75114
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: I14b7ebb3521f9a23fcf4c3ff907408327f189f29
Reviewed-on: https://gerrit.libreoffice.org/74138
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
If the '-std=' compiler flag is set in CXXFLAGS,
take that over into the .pro files used by
Qt Creator.
This makes ClangCodeModel use the correct std version,
and e.g. know about 'std::string_view' if '-std=gnu++2a'
(or anything else indicating C++17 or higher is supported)
is used and thus avoids unnecessary errors/warnings from
being displayed.
Use a list, so other flags can easily be added later.
(It currently doesn't seem reasonable to me to just pass all
cxxflags though, since .pro files are currently only generated
per top-level module, while C++ flags can differ between
different targets in the same module).
Change-Id: Id3f3e2b9ba77e5220a17fd4796937c816979959a
Reviewed-on: https://gerrit.libreoffice.org/73677
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Adding AdditionalOptions to nmake project settings allows IntelliSense
to know about used compiler switches; specifically, passing std switch
(currently -std:c++17) defines _MSVC_LANG macro [1] to proper value to
avoid false IntelliSense errors (e.g., for string_view).
[1] https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros
Change-Id: I90309e6bf2a87257a0c81b1406e678af962eb587
Reviewed-on: https://gerrit.libreoffice.org/67805
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I70613baada4f82e5e56f9a21547733c3a6907b53
Reviewed-on: https://gerrit.libreoffice.org/66908
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Take system includes ('-isystem') into account
when generating the '*.pro' files for Qt Creator
using the 'qtcreator-ide-integration' make target.
Without this, Qt Creator is unable to find the
corresponding included files.
This also makes Qt Creator's ClangCodeModel
able to properly process files and display
actual problems, rather than always showing
a multitude of errors due to missing includes
while parsing the source/header files.
Change-Id: Ie513341e1074ceab9304ae9df73fac9a79329db8
Reviewed-on: https://gerrit.libreoffice.org/65129
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: I69e4d471c806159d6748016a79f041c01b40b888
Reviewed-on: https://gerrit.libreoffice.org/64430
Tested-by: Jenkins
Reviewed-by: Jens Carl <j.carl43@gmx.de>
|
|
This allows to avoid the "(Visual Studio 2015)" labels next to project
names in Solution Explorer; and also avoid multiple warnilgs like
project-name.vcxproj : warning : The build tools for Visual Studio
2015 (v140) cannot be found. Install Visual Studio 2015 (v140) to
build using the Visual Studio 2015 (v140) build tools.
in IDE's Output pane in case VS2015 is absent locally.
Change-Id: I53b68ac810cbf2a31667c35dd549310e7209e010
Reviewed-on: https://gerrit.libreoffice.org/59797
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Fixes the problem that e.g. this code:
OUString str;
str += "";
is marked as a compile error, when clang would still work with c++11,
but the tree is configured for gnu++17.
Change-Id: Id60c0cf4b8c693b534f16ba813cf01a4bad7e560
Reviewed-on: https://gerrit.libreoffice.org/59746
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins
|
|
Change-Id: I4a17cfb567f5ebec8bb416b9aa4d58763ff36c36
|
|
It turns out that VS IDE's "Peek definition" (and other functions that
navigate to sources) fail if the short ("DOS") path to the file is given
in project's includes: see issue at
https://developercommunity.visualstudio.com/content/problem/139659/vc-peek-definition-fails-to-navigate-to-windows-ki.html
This patch converts the include paths to full Windows paths, to avoid the
problem. Also, since IDE starts working correctly with this change, this
patch removes inclusion of "inherited" paths "$(IncludePath)", which are
the paths added by Visual Studio itself. Since we do specify all include
paths explicitly, that is not required, and avoids confusion.
Change-Id: Ide2d948f8c7b050b02f550342144fede4fcafb82
Reviewed-on: https://gerrit.libreoffice.org/53731
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Avoids VS warnings:
> smoketest\Library_smoketest.vcxproj.filters : warning : Unable to
> read the filters file "Library_smoketest.vcxproj.filters". Please
> unload the project "Library_smoketest.vcxproj" to be able to edit it.
> The required attribute "Include" is empty or missing from the element
> <Filter>.
Change-Id: I0f02e837823a5e7a0355fd0f895f00c63a5df6fc
Reviewed-on: https://gerrit.libreoffice.org/51684
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
It is more likely that soffice.bit should be debugged, not soffice.exe
stub. This allows to start debug session from VisualStudio, and debug
startup code.
Change-Id: Iab4615c67aeb25b811ecc71f6ae48aa9b40c45dc
Reviewed-on: https://gerrit.libreoffice.org/48025
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Since commit ecbaf980625a9e7b06abe91c7c70e78f6ad469a7 (-I$(dir $(3)) in
gb_CObject__command_pattern is no longer needed, 2017-11-01).
Change-Id: I9d6b7436f7b6e865d37e358adb9cf075e4e51bff
|
|
Moved gbuild-to-ideNS to gbuild-to-ide (NS was the original)
Removed gbuild-to-ideNS from Makefile.in
the original gbuild-to-ide was split off to gbuild-to-ideNS, in order
not to disturb the production environment while playing with new ide
generation.
Work on a new IDE generator have been stopped for a half year, so time
to clean up.
The work on a new Xcode generator continues offline (for now), and are
part of the iOS development.
Change-Id: Ia67355df21c6aec592d792ffa7c904a568eff961
|
|
Before this, -D_WIN32_WINNT=0x0601 used to land to VS project simply
as _WIN32_WINNT (without value).
Change-Id: I68ebdc24c3181c5d9e046280756e4cefee3de46c
Reviewed-on: https://gerrit.libreoffice.org/43928
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Previously, defines string like this:
-DDBG_UTIL -DNOMINMAX -D_DLL -UNOMINMAX
would produce this defines list:
DBG_UTIL;NOMINMAX;_DLL -UNOMINMAX
where last "define" is incorrect; proper list should be
DBG_UTIL;_DLL
so that the undef'ed element would be properly eliminated from the
result. This patch takes care of this.
Change-Id: Ia66a1d6d0a6e0bbfd0022b22285b005609871336
Reviewed-on: https://gerrit.libreoffice.org/43923
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
See https://msdn.microsoft.com/en-us/library/jj620914
Change-Id: Ibd18f1c36c46ea47c897542f35e3ea2a8bc0a8ac
Reviewed-on: https://gerrit.libreoffice.org/39510
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Too old to build master.
Change-Id: I01636c9ae26ddb3954dcfdd1977551c0f115a81b
|
|
change for cicle to generate only one .vcxproj and .filter pr module
Change-Id: I93f2279e368e11ef5b9d442c6dcdfa4bf39bd6c2
Reviewed-on: https://gerrit.libreoffice.org/35075
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@libreoffice.org>
|
|
this patch fix some problem in the class testVS2013Ide:
fix some tag xml bad generated, i test the project pocheck
and it compiles.
Change-Id: I5a4e3e71286a486e03ecbe936fb848e589ff71c9
Reviewed-on: https://gerrit.libreoffice.org/34739
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@libreoffice.org>
|
|
this patch add a PropertySheet.props in the windows directory
in this file can put the enviroment variables
for vs2013.
i add in the gbuildparser a variable _jsonsrcdir that
contains the SRCDIR path that it can found in the json file.
with this file we can use enviroment variables of LO.
e.g.: $(SRCDIR), $(BUILDDIR) etc...
in the VS2013 ide.
Change-Id: Ie3158fd31fe247833115d445553f613dcd1a3b1d
Reviewed-on: https://gerrit.libreoffice.org/34749
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@libreoffice.org>
|
|
double ".ccx" for each source files in the .filters in the
testVS2013Ide.
this patch fix that.
Change-Id: Ic06800c260800f72254038e30119db40fe048037
Reviewed-on: https://gerrit.libreoffice.org/33892
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
|
this function generates a vcxproj, for the reverse engineering
i generate a vcxproj from VS2013 that:
-the compiler works good
i do the code that generates it
the code miss that the link to lib that i left commented
Change-Id: If98eb5645c9e1060a55701abf5b96db85eca6ce5
Reviewed-on: https://gerrit.libreoffice.org/33893
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
|
In order to compile correct this flag is needed and
it is not exported in the json files
Change-Id: Ib8f0b882f2d59ed467a9198c148263e2882c60b3
|
|
the path in gbuildparse changed, so this patch re-adapt this
2 IDE integration
Change-Id: I5f7a679b8b12eac6f44030a33713ff19327b9d1a
Reviewed-on: https://gerrit.libreoffice.org/33815
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
|
Change-Id: I3b57086349d039087dc9395f7af63f8e8fbf1bab
|
|
Sometimes gbuildtojson does not get rebuild, and thus
delivers unexpected json files (old keys)
Change-Id: Ib4bab170ed5a2ab5c112d19af144f2551e608278
|
|
VisualStudio2013IntegrationGenerator recently doesn't work
with the new relative paths in GbuilParser.
this patch does this, now it works fine with all relative paths.
what is missing it's in the .vcxproj:
<NMakeBuildCommandLine>
<NMakeCleanCommandLine>
<NMakeReBuildCommandLine>
these still work with absolute path but i start now on working this
Change-Id: I19610097edc11be67b4f7fd9f32b6683d334cc2d
Reviewed-on: https://gerrit.libreoffice.org/33735
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
|
|
this patch writes the .filters file, it creates 2 filters:
-headers: place, for each module, the header files contained in gbuilparser.modules[<module>][headers]
-sources: place, for each module, the cxx files contained in gbuildparser.modules[<module>][<target>]['CXXOBJECTS']
Change-Id: Iba98d788b72992624fb8aa09315a5647e275ffcc
Reviewed-on: https://gerrit.libreoffice.org/33721
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
|
|
Regression from commit 92c2c5f62d6e8962259e03424a40b6ac7ef32e7d
(gbuild-to-ide: moduleDict targets -> all paths replaced with relative,
2017-01-24), <https://clang.llvm.org/docs/JSONCompilationDatabase.html>
says about the "directory" key of one entry:
"All paths specified in the command or file fields must be either
absolute or relative to this directory."
So making the includes relative to the toplevel directory won't fly,
make them absolute.
Change-Id: I3f33c7a21880c1b245580b22996079ba08e3d806
Reviewed-on: https://gerrit.libreoffice.org/33694
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Updated xcode, WIP.
Solved problem with vim.
Remark the vim-ide-integration is not maintained, and cannot be expected
to work as the IDE gets more integrated.
Change-Id: I9d6fe6d2caef7162298814f1ab0d16c7aeb7d895
|
|
First step in removing make as builder.
Change-Id: I445627df5610a7d0b8bfbabddb66f1273e021b1a
|
|
Added source files so they are sorted (earlier was sorted pr target)
include files added.
Change-Id: Id9581e2c4d6b123eb13ecc7ce2586fe52cb3ab4f
|
|
Last central change, before rewrapping xcode.
Change-Id: If9b3d668fa59fe32a7a89a17ea56a6852b260a2b
|
|
Additional to having sources pr target (needed
for generarition), each module also has a sources key
where all the module source files are sorted, this allows
to present the user with a sorted list of sources.
Change-Id: I8fd8249c88dc55f47199b7998faeb721d74f982f
|
|
Instead of each generator handling extensions it is
not done centrally.
Change-Id: I2cf1a499269a26c1c402577b3e8e508d578f9c6e
|
|
added support for add_grammars macro
Change-Id: I17955bd1534d9f43e1953691d985a18ee8241d38
|
|
added add_scanner macro
Finalized the move around in gbuild-to-ide, to signal
which generators are actively supported.
Change-Id: I11699cd4380d49efc3b541abb7780b5136162433
|
|
Added "testIde-ide-integration" to allow test of new vs2013 generator.
Change-Id: Ia7d286f06e287ce97faa0a262ee4f93172d4ed28
|
|
in moduleDict[<module>][<target>] all absolute paths are replaced
with a relative path:
-include/libs relative to core(contained in json) directory
-json objects, makefile, relative to <module> directory
Change-Id: I5dd64942c2a4d6fc2f01037ee7417de91c41906a
Reviewed-on: https://gerrit.libreoffice.org/33506
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
|
this patch do 2 things:
1a) create class testide, a duplicate of
VisualStudioIntegrationGeneration to work on it without touch the
real one
1b) place xcodeintegrationgenerator under testide, and under this
last one all of generators that work yet
Change-Id: Ib678134678ed19de9dcd9d1f47e8e7c16ae59f74
Reviewed-on: https://gerrit.libreoffice.org/33495
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
|
|
Lost in commit 115797f070888cbad93656dda8fa01ec6c98a3f5 (beginning of
support for CodeLite in gbuild-to-ide, 2017-01-19), probably
accidentally.
Change-Id: I641ba0b5e2960ff9b98403bd6379608f3e452c9c
|
|
Change-Id: Ica8384b374e0d680704cba17a9d4c9f30ae08bf5
|
|
Change-Id: I5640ad193f2766400554012383d6c910f2160378
Reviewed-on: https://gerrit.libreoffice.org/33396
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Now the json file can be expanded with new keys, without
the need to touch parser.
Change-Id: I8182e8030e206e302258bd156d7392ff5c98f3d4
|
|
The class GbuildLinkTarget was removed and replaced by a dict.
This is first step in avoiding typing the json key names multiple times
Change-Id: I3a2006979929c5d21549693e51eb47df7233400d
|
|
this change the directory of all files .sln, . vcxproj,.filters to windows folder
i change only a variable VisualStudioIntegrationGenerator.solution_path from './' to './windows'.
i investigate in the .vcxproj, .filters, .sln if there are references to change but i don't find anything (all the files written in this files are an absolute path) and i test 'make vs2013-ide-integration'...
the files are exactly generated, i test in a windows machine and visual studio work perfectly...
Change-Id: I111c39173b95a6888c8d39058b1db4da7a9be206
Reviewed-on: https://gerrit.libreoffice.org/33301
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
|
|
this patch improve the functions:
-find_all_headers -> make _allheaders a dict: _allheaders['<modulename>'] contains the list of all headers for that module
-headers_of(modulename) -> it return the list of headers for that module, or a empty list for module that not have headers
Change-Id: I7e4e2bf063ccf6fd2e3e5155b58d2be2412480ba
Reviewed-on: https://gerrit.libreoffice.org/33255
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@documentfoundation.org>
|