Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development

Alpha's Project exporter - added "working" CMAKE POC

<< < (2/5) > >>

AndrewCot:
Thanks for making the changes to the macro manager.

Miguel Gimenez:
I am getting crashes in all RunExposrtXXX() methods, even if I comment the inner code.

The problem is wxMenuItems generate wxEVT_MENU events, not wxEVT_COMMAND_TOOL_CLICKED, and the connected method receives a reference to wxCommandEvent.


--- Code: ---    Connect(ID_Menu_AutotoolsExport, wxEVT_MENU, (wxObjectEventFunction)&ProjectExporter::RunExportAutotools);
    ...
void ProjectExporter::RunExportAutotools(wxCommandEvent& event)

--- End code ---
(repeat for all methods)

Using a small project, for autotools I get:

--- Code: ---AM_OPTIONS_WXCONFIG
AM_PATH_WXCONFIG(3.1.0, wxWin=1)
    if test "$wxWin" != 1; then
        AC_MSG_ERROR([
            wxWidgets must be installed on your system.

            Please check that wx-config is in path, the directory
            where wxWidgets libraries are installed (returned by
            'wx-config --libs' or 'wx-config --static --libs' command)
            is in LD_LIBRARY_PATH or equivalent variable and
            wxWindows version is 3.1.0 or above.
        ])
    fi
Autotools build system created

--- End code ---

For Bakefile I get 4 identical asserts:

--- Code: ---arrstr(558) iIndex != -1 failed in Remove()

--- End code ---
and then a .bkl file is created in the project's home page (but there should be an informative message).
EDIT: this asserts are generated in EmitFlags(), calling wxArrayString::Remove() asserts if the string does not exist.

Premake shows two messages:

--- Code: ---Premake script exported
Premake script exported

--- End code ---
and a .lua file is created in the project's home page (but there should be an informative message).

CMake shows this:

--- Code: ---RunExportCMake started
RunExportCMake started completed

--- End code ---
but does not create anything.

AndrewCot:
Thanks for the testing and feedback. I am working on getting the plugin incorporated into all of the build steps for all of the different processes.

I have not tested or used any of Alpha's existing export options as I am more interested in exporting to CMake. I will get to the feedback in a few days time.

What project/workspace were you using for the tests? This way when I get to look at the issues I can try the same file in case it has something that I have not catered for in the CMake exporter.

ollydbg:
I see the code is now switched to this folder, so the web link in the first post should be adjusted.

https://github.com/acotty/CodeBlocks_Unofficial_Testing/blob/master/src/plugins/contrib/ProjectExporter/CMakeListsExporter.cpp

and good work!

AndrewCot:
It gets a bit more complex as I now have a branch on the my Github SF mirror fork and updated the build files so the plugin now builds against this SF Trunk mirror. I have updated the branch to build on the following processes, which I have also checked load the plugin:
* Windows workspace
* Linux Workspace
* Linux boostrap/configure/make
* MacOS boostrap/configure/makeI have not had time to test the Linux Debian build process as it takes a few hours from start to finish and in 95+% of cases if the Linux boostrap/configure/make works then the Debian build also works, apart from if I have made mistake(s) in the files in the Debian directory as the build process under the hood is the same as far as I have seen.


The github SF CB mirror branch with the changes is:
*     https://github.com/acotty/codeblocks_sfmirror/tree/ProjectExporterThis branch is the equivalent of the SF SVN trunk from 24 hrs ago (r12860) with the build and source changes for the plugin. The mirror is normally updated between 4 and 24 hrs after any SF changes, but sometimes (once every month or two) it can lag by 36 to 48 hrs. Worst I have sen it in the last year is 3 days when there were internet backbone issues in the USA.

If nothing else pops up I can start to look at Miguel's feedback tomorrow.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version