summaryrefslogtreecommitdiff
path: root/bin/gbuild-to-ide
AgeCommit message (Collapse)AuthorFilesLines
2018-03-21Don't generate filters with empty IncludesMike Kaganski1-1/+1
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>
2018-01-17VS generator: set output to soffice.bin to allow starting from debuggerMike Kaganski1-1/+1
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>
2017-11-23vim-ide-integration: -I<dir> workaround is no longer neededMiklos Vajna1-4/+0
Since commit ecbaf980625a9e7b06abe91c7c70e78f6ad469a7 (-I$(dir $(3)) in gb_CObject__command_pattern is no longer needed, 2017-11-01). Change-Id: I9d6b7436f7b6e865d37e358adb9cf075e4e51bff
2017-11-18gbuild-to-ide cleaned up double scripts.jan Iversen1-1222/+651
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
2017-10-27VisualStudioIntegrationGenerator: honor defines' valuesMike Kaganski1-1/+12
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>
2017-10-26gbuild-to-ide: handle -U undefs correctlyMike Kaganski1-1/+6
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>
2017-07-05gbuild-to-ide: add VisualStudio visualizers file to solutionMike Kaganski1-0/+10
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>
2017-06-28remove "vs2013" from gbuild-to-ideMichael Stahl1-3/+2
Too old to build master. Change-Id: I01636c9ae26ddb3954dcfdd1977551c0f115a81b
2017-03-12solution ProjectIDE-vs2013: Generate.5: only 1 .vcxproj and .filter pr moduleGian Domenico Ceccarini1-22/+23
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>
2017-03-03gbuild-to-ide: fix testide problemFederico Bassini1-16/+12
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>
2017-03-03gbuild-to-ide: testVS2013Ide .propsFederico Bassini1-2/+33
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>
2017-02-04gbuild-to-ide fix the double .cxx in the .filtersFederico Bassini1-2/+2
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>
2017-02-04gbuild-to-ide: new function that generates a vxcproj on testIDEFederico Bassini1-1/+117
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>
2017-02-02gbuild-to-ide added -DLIBO_INTERNAL_ONLY to CXXFLAGSjan Iversen1-0/+1
In order to compile correct this flag is needed and it is not exported in the json files Change-Id: Ib8f0b882f2d59ed467a9198c148263e2882c60b3
2017-02-02gbuild-to-ide: second patch for vs2013 and testIdeFederico Bassini1-13/+13
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>
2017-02-01gbuild-to-ide typojan Iversen1-1/+1
Change-Id: I3b57086349d039087dc9395f7af63f8e8fbf1bab
2017-02-01gbuild-to-ide patch to allow faulty gbuildtojsonjan Iversen1-0/+2
Sometimes gbuildtojson does not get rebuild, and thus delivers unexpected json files (old keys) Change-Id: Ib4bab170ed5a2ab5c112d19af144f2551e608278
2017-02-01gbuild-to-ide: VSGenerator and testVs2013 with relative linksFederico Bassini1-17/+23
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>
2017-01-31gbuild-to-ide: testVS2013Ide add a function that create .filters fileFederico Bassini1-45/+34
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>
2017-01-30gbuild-to-ide: fix VimIntegrationGeneratorMiklos Vajna1-1/+1
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>
2017-01-30gbuild-to-ide, solved vim problem.jan Iversen1-16/+38
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
2017-01-29gbuild-to-ide xcode, added targets in menujan Iversen1-98/+111
First step in removing make as builder. Change-Id: I445627df5610a7d0b8bfbabddb66f1273e021b1a
2017-01-29gbuild-to-ide xcode added include files and sorted source listjan Iversen1-35/+28
Added source files so they are sorted (earlier was sorted pr target) include files added. Change-Id: Id9581e2c4d6b123eb13ecc7ce2586fe52cb3ab4f
2017-01-28gbuild-to-ide source code is relative to modulejan Iversen1-8/+12
Last central change, before rewrapping xcode. Change-Id: If9b3d668fa59fe32a7a89a17ea56a6852b260a2b
2017-01-28gbuild-to-ide, add pr module sourcesjan Iversen1-5/+9
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
2017-01-28gbuild-to-ide, centralized adding extension.jan Iversen1-26/+24
Instead of each generator handling extensions it is not done centrally. Change-Id: I2cf1a499269a26c1c402577b3e8e508d578f9c6e
2017-01-26gbuildtojson support for yacc files.jan Iversen1-9/+8
added support for add_grammars macro Change-Id: I17955bd1534d9f43e1953691d985a18ee8241d38
2017-01-26gbuildtojson, added support for lex filesjan Iversen1-10/+22
added add_scanner macro Finalized the move around in gbuild-to-ide, to signal which generators are actively supported. Change-Id: I11699cd4380d49efc3b541abb7780b5136162433
2017-01-26gbuild-to-ide finalized split of maintained codejan Iversen1-274/+286
Added "testIde-ide-integration" to allow test of new vs2013 generator. Change-Id: Ia7d286f06e287ce97faa0a262ee4f93172d4ed28
2017-01-25gbuild-to-ide: moduleDict targets -> all paths replaced with relativeFederico Bassini1-8/+19
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>
2017-01-24gbuild-to-ide: replacement of the codeFederico Bassini1-219/+479
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>
2017-01-23gbuild-to-ide: restore exec bitMiklos Vajna1-0/+0
Lost in commit 115797f070888cbad93656dda8fa01ec6c98a3f5 (beginning of support for CodeLite in gbuild-to-ide, 2017-01-19), probably accidentally. Change-Id: I641ba0b5e2960ff9b98403bd6379608f3e452c9c
2017-01-23didn't mean to commit that partNoel Grandin1-1/+1
Change-Id: Ica8384b374e0d680704cba17a9d4c9f30ae08bf5
2017-01-23beginning of support for CodeLite in gbuild-to-ideNoel Grandin1-1/+67
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>
2017-01-22gbuild-to-ide, final cleanup in parser.jan Iversen1-33/+21
Now the json file can be expanded with new keys, without the need to touch parser. Change-Id: I8182e8030e206e302258bd156d7392ff5c98f3d4
2017-01-21gbuild-to-ide clean replaced GbuildLinkTarget with dictjan Iversen1-108/+75
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
2017-01-20gbuild-to-ide.py - change directory for .sln,.vcxproj,.filtersFederico Bassini1-1/+1
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>
2017-01-18gbuil-to-ide.py functions improvmentFederico Bassini1-6/+12
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>
2017-01-17gbuild-to-ide prepare for missing file types.jan Iversen1-18/+16
Expanded the parser to understand the new json keys. Change-Id: I8ff91a9113a7b539a1d85e8ea936555825260ba0
2017-01-17gbuild-to-ide - all headers add to moduleDict for each moduleFederico Bassini1-11/+23
i added a key 'headers' in the moduleDict that contains a list of all the headers files (.hxx, .h, .hpp) fot that module... moduleDict['<module>']['headers']= list of all the <module>'s headers files i run "make debug-ide-integration" found 3 error: i added also a if statement to skip 'include' module for eclipse and kdevelop...(2 error) the 3° error leave untouched; it is at the line 495 'os.mkdir', the error say(for UnoControls module) Unocontrols/.kdev exist yet! Update: i have change the code as jan suggests! i do 2 function: -find_all_headers(): that call only one a subprocess and it founds all the headers file contents in core folder and save it in a list -headers_of(modulename): it return a list of the headers only for the modulename parameter, it called in the assignment moduleDict[module]['headers']=... this only create a process once! it's more faster :) Change-Id: If05ce4104bcdd178c0c6a6f589fa0720d493dad6 Reviewed-on: https://gerrit.libreoffice.org/33208 Reviewed-by: jan iversen <jani@documentfoundation.org> Tested-by: jan iversen <jani@documentfoundation.org>
2017-01-16post_GbuildToJson.mk, extended with extra file typesjan Iversen1-2/+4
Extended the call to gbuildtojson, with extra file types. Some filetypes still need data collection, this is noted in the file as todo. Change-Id: I3e832f82656236d42d1d7b59bf3ac2925c5b1568
2017-01-16gbuild-to-ide, temporary fixjan Iversen1-3/+1
added test if key is in json file, this is needed at least temporary. Change-Id: I6fca2dff7fd198ac6b324869146c14de5f38b414
2017-01-16gbuildtojson prepare for new filetypes.jan Iversen1-6/+14
gbuild-to-ide now contains a dict with json name -> file extension post_GbuildToJson.ml contains a todo list (missing files, new arguments) gbuildtojson.cxx made resistent (no extra argument list to maintain) Change-Id: I7f346f606ed5fba0a1eaffdd38454b484cecfcf5
2017-01-16gbuild-to-ide, typojan Iversen1-1/+1
create_include_pathks --> create_include_paths Change-Id: I23a88e4c3685306beecc34df72fe6691fde042ca
2017-01-16gbuild-to-ide xcode-ide-integrationjan Iversen1-68/+20
change target to use "make" for now. this patch enables debug/build in xcode. Change-Id: I1bac15beb77af35d7348eab9e645a1bf3522c2c8
2017-01-16gbuildparser in gbuild-to-ide - added headers of the include moduleFederico Bassini1-7/+30
this is the version of gbuild-to-ide that implement a capture 1 of the project "keeping contributors" it adds all the headers files (.hxx,.h,.hpp) content in the folder include in moduleDict['include']['headers'] there is an error in the VisualStudioIntegrationGeneration.emit() because there is a for that work only with the modules[<module_name>]['targets'] whatever i'll do a comment in the code(i added a if statement!)with the error description that generate this error to not forget! Change-Id: I7cd6a15482d99406573dbd9bd095987772377cff Reviewed-on: https://gerrit.libreoffice.org/33162 Reviewed-by: jan iversen <jani@documentfoundation.org> Tested-by: jan iversen <jani@documentfoundation.org>
2017-01-14gbuild-to-ide, prepare for more file types.jan Iversen1-8/+28
The structure how to capture new file types is in place, now search need to start in post_Gbuildtojson for missing/wrong macros. Change-Id: I9f97a6181c24d2cffbb004ee660c9cfbf5d0a099
2017-01-14gbuild-to-ide GbuildParser cleanedjan Iversen1-20/+25
Removed target_by_path. All targets listing is now via .modules[*]['targets'] Eclipse & Kdevelop classes updated. Change-Id: I71ec088cf2e77777eeb51ec68517c22bff9ddf44
2017-01-14gbuild-to-ide cleanup GbuildParserjan Iversen1-40/+44
Removed .files replaced by .modules[*]['targets'] Affected generators updated. Change-Id: I4bf4cb5a23ba0b48b11adb1795c0a4f9dfbb0d3a
2017-01-14gbuild-to-ide added control of platforms.jan Iversen1-36/+50
The debug generator is extended to build IDE for all platforms, these IDE will of course not be useable, but it gives a security that the script does not break. Removed target_by_location from GbuildParser, to simplify that class. Change-Id: Ie41ca3d156321041958213333b2d73c57ba918f9