ANN : VersionManager Plugin

Discussion about CodeLite development process and patches
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

ANN : VersionManager Plugin

Post by jfouche »

Hi

Here is the first beta of the VersionManager plugin.
- You can manage your project version by manualy enter version informations
- You can deliver a new version
- You can also get the SVN revision automaticaly
- Lot's of options are available (variables name, namespace, use SVN, SVN path)
Enjoy
Last edited by jfouche on Mon Sep 14, 2009 9:57 pm, edited 2 times in total.
Jérémie
RJP Computing
CodeLite Enthusiast
Posts: 10
Joined: Tue Sep 02, 2008 7:48 pm
Contact:

Re: ANN : VersionManager Plugin 0.1.4.10

Post by RJP Computing »

This looks cool, but how do you build? It is giving this error:

Code: Select all

D:/devel/progs/VersionManager/versionmanager.cpp:7:24: error: vm_version.h: No such file or directory
D:/devel/progs/VersionManager/versionmanager.cpp: In function 'PluginInfo GetPluginInfo()':
D:/devel/progs/VersionManager/versionmanager.cpp:187: error: 'version' was not declared in this scope
I got the source from svn. Is that not what you intended?
--
Regards,
Ryan
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: ANN : VersionManager Plugin 0.1.4.10

Post by jfouche »

Hi Ryan

Oups, I agree, there is a mistake, the vm_version.h is missing in the repository.
I will add it tonight.

here is the content :

Code: Select all

#ifndef VERSIONMANAGER_VERSION_H_INCLUDED
#define VERSIONMANAGER_VERSION_H_INCLUDED

namespace version {

static const int   MAJOR = 0;
static const int   MINOR = 1;
static const int   RELEASE = 6;
static const int   BUILD = 0;
static const char* STATUS = "Beta";

static const char* VERSION = "0.1.6.0 Beta";

}; // namespace version

#endif // VERSIONMANAGER_VERSION_H_INCLUDED
Enjoy, and give me your feedback if you want
--
Jérémie
Jérémie
RJP Computing
CodeLite Enthusiast
Posts: 10
Joined: Tue Sep 02, 2008 7:48 pm
Contact:

Re: ANN : VersionManager Plugin 0.1.4.10

Post by RJP Computing »

Alright I got it to build. Looks great and I really would like this feature in CodeLite.

Suggestion: Can you make it so that it stores the configuration outside the *.project file. I think this could be a setting. The reason is that I use Premake and it generates the project files for me and erases the UserData settings. Thoughts?
--
Regards,
Ryan
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: ANN : VersionManager Plugin 0.1.4.10

Post by jfouche »

Ryan

Thanks a lot.
Let me think a little bit about your request, I need to find a (good) way to do this. If you have an idea, you can help me.
FYI : I commited vm_version.h

EDIT :
The only solution i found for the moment is to create a <project>.versionmanager file. If this file exists, versionmanager will use it, either, it will use the project file and its user data. Moreover, I have to add another message box to ask if the user want to use project file or external file to store informations. What do you think ?
Jérémie
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: ANN : VersionManager Plugin

Post by jfouche »

Done
Jérémie
ajaywazir
CodeLite Curious
Posts: 1
Joined: Tue Sep 01, 2009 7:31 pm
Contact:

Re: ANN : VersionManager Plugin

Post by ajaywazir »

Hi
Can you post a compiled windows DLL?
Ajay

the reason to ask is that I cannot compile the same on windows XP
I use codelite bundled with mingw and wxwidgets installations.
I downloaded codelite source code and copied all required h files to project directory.
Finally I am now stuck with /wx/wxsqlite3.h missing.
After searching internet, all files compiled.
Now linker has a problem.
See the error log
Please help

Code: Select all

g++ -c  "C:/Download/temp/versionmanager-read-only/src/versionmanager.cpp" -mthreads -DHAVE_W32API_H -D__WXMSW__ -D_UNICODE -IC:\wxWidgets-2.8.7\lib\gcc_dll\mswu -IC:\wxWidgets-2.8.7\include -DWXUSINGDLL -Wno-ctor-dtor-privacy -pipe -fmessage-length=0    -O2 -D__WX__ -DWXUSINGDLL -D_WIN32_WINNT=0x501 -DASTYLE_LIB  -o ./WinReleaseUnicode/versionmanager.o "-I." "-I/Interfaces" "-I/CodeLite" "-I/Plugin" "-I/sqlite3" "-I/sdk/wxsqlite3/include" "-I." 

g++ -c  "C:/Download/temp/versionmanager-read-only/src/vm_gui.cpp" -mthreads -DHAVE_W32API_H -D__WXMSW__ -D_UNICODE -IC:\wxWidgets-2.8.7\lib\gcc_dll\mswu -IC:\wxWidgets-2.8.7\include -DWXUSINGDLL -Wno-ctor-dtor-privacy -pipe -fmessage-length=0    -O2 -D__WX__ -DWXUSINGDLL -D_WIN32_WINNT=0x501 -DASTYLE_LIB  -o ./WinReleaseUnicode/vm_gui.o "-I." "-I/Interfaces" "-I/CodeLite" "-I/Plugin" "-I/sqlite3" "-I/sdk/wxsqlite3/include" "-I." 

g++ -c  "C:/Download/temp/versionmanager-read-only/src/vm_manager.cpp" -mthreads -DHAVE_W32API_H -D__WXMSW__ -D_UNICODE -IC:\wxWidgets-2.8.7\lib\gcc_dll\mswu -IC:\wxWidgets-2.8.7\include -DWXUSINGDLL -Wno-ctor-dtor-privacy -pipe -fmessage-length=0    -O2 -D__WX__ -DWXUSINGDLL -D_WIN32_WINNT=0x501 -DASTYLE_LIB  -o ./WinReleaseUnicode/vm_manager.o "-I." "-I/Interfaces" "-I/CodeLite" "-I/Plugin" "-I/sqlite3" "-I/sdk/wxsqlite3/include" "-I." 

g++ -c  "C:/Download/temp/versionmanager-read-only/src/svn_cmd.cpp" -mthreads -DHAVE_W32API_H -D__WXMSW__ -D_UNICODE -IC:\wxWidgets-2.8.7\lib\gcc_dll\mswu -IC:\wxWidgets-2.8.7\include -DWXUSINGDLL -Wno-ctor-dtor-privacy -pipe -fmessage-length=0    -O2 -D__WX__ -DWXUSINGDLL -D_WIN32_WINNT=0x501 -DASTYLE_LIB  -o ./WinReleaseUnicode/svn_cmd.o "-I." "-I/Interfaces" "-I/CodeLite" "-I/Plugin" "-I/sqlite3" "-I/sdk/wxsqlite3/include" "-I." 

g++ -shared -fPIC -o WinReleaseUnicode/VersionManager.dll ./WinReleaseUnicode/versionmanager.o ./WinReleaseUnicode/vm_gui.o ./WinReleaseUnicode/vm_manager.o ./WinReleaseUnicode/svn_cmd.o  "-L/lib/gcc_lib"  -lplugin_sdku -lCodeLiteu -lwxsqlite3u -lsqlite3 -lwxmsw28u  -O2  -mthreads -LC:\wxWidgets-2.8.7\lib\gcc_dll -lwxmsw28u -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregexu -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwxregexu -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 

C:\MinGW-3.4.5\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: cannot find -lplugin_sdku
collect2: ld returned 1 exit status
mingw32-make.exe: *** [WinReleaseUnicode/VersionManager.dll] Error 1
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: ANN : VersionManager Plugin

Post by jfouche »

Hi

Thanks for your interest. I think I can't provide you a binary, because I don't use the same wxWidgets version as the one provided with CodeLite installation, so it will not be compatible.

Your problem is that you (probably) did not compile CodeLite yourself : you need to compile the plugin_sdk and CodeLite libraries.
Moreover, you forgot to define the cl environment variable, which must point on you CodeLite sources directory.
Have a try and let me know if you succed or not.
If you have too much difficulties, I can compile it for wxWidgets 2.8.7 during next week end.
Jérémie
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: ANN : VersionManager Plugin

Post by eranif »

Hi Jeremie!

In the coming release of codelite, it will be built against wx2.8.10 on Windows (and against the distro's default on Linux) and the bundle package will include wx2.8.10 precompiled - so maybe it will make your life easier to provide binaries to people who needs them :)

Eran
Make sure you have read the HOW TO POST thread
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: ANN : VersionManager Plugin

Post by jfouche »

A DLL for Windows is available for download on the web site.
Everybody can have a look, without spending some time trying to compile it.
Enjoy, feedback is welcome.
Jérémie
Post Reply