Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-09 Thread younes . a
Quoting Jean-Marc Lasgouttes <[EMAIL PROTECTED]>:
> > "Abdelrazak" == Abdelrazak Younes <[EMAIL PROTECTED]> writes:
>
> Abdelrazak> I guess that would be a "no" from JMarc and Lars so let's
> Abdelrazak> just forget about this thread. Sorry for the noise.
>
> Hey! You did not give me a chance to say "no" by myself!
>
> So, as far as you original plan is concerned, my answer is indeed "no"
> :)

That's clear enough :-)

> What I propose, though, is that you look at the convenience functions
> defined in support/lyxlib.h and see which ones can be replaced by
> boost thing. We probably do not need to implement mkdir, for example.
>
> One way of lessening the portability problem is to delegate it to
> boost.

Year there is a lot we can do there; but the major burden is actually gettext
support. Unless we clean that or separate that from the rest, the configure
step will remain slow.

Abdel.


[O-T] Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread christian . ridderstrom
On Sat, 6 May 2006, Georg Baum wrote:

> I am historic? Not at all (or you will be historic in next year, too).

While doing my PhD, I think it was my professor who said that you become
an export on a (minor) topic in six months. So becoming historic in a year
sounds about right to me :-)

/C

-- 
Christian Ridderström, +46-8-768 39 44   http://www.md.kth.se/~chr




Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Enrico Forestieri
On Mon, May 08, 2006 at 10:30:06AM +0200, Joost Verburg wrote:

> Abdelrazak Younes wrote:
> > It is already generating it my friend. I was trying to improve the 
> > present build system which is close to sxxxt as far as I am concerned 
> > with windows. You say you are caring about portability across old Unix 
> > and other exotic system but I reckon there are *much* more users on 
> > windows than the sum of all those other system. It's not that I like 
> > Windows (far from it) but I am _forced_ to it, so are many others.
> 
> I also think that the development of a scons system is a good thing that 
> should be supported. The Windows auto* stuff only works on Cygwin and 
> supports nothing else than GCC.

This is not true. They are indeed geared towards gcc but can be made
to work with other compilers. Sadly, there are not much of them in
the free software domain.

> A good scons system will make it possible to compile using MinGW, 
> Microsoft C++, Borland or whatever using the same scripts.

While I have no problems with auto tools, I think that it is wrong
to put one's head in the sand. So if something better is proven to
exist, it is foolish ignoring it (you would risk to be a dinosaur
doomed to extinction).

However, I am afraid that this is neither mine nor your call...

-- 
Enrico


Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Charles de Miramon
Joost Verburg wrote:
> A good scons system will make it possible to compile using MinGW,
> Microsoft C++, Borland or whatever using the same scripts.
> 
> Joost

I'm not a developper and incapable of having a real technical opinion. But
why not wait until KDE finishes its transition to CMake. I guess it will
take another 6 months to have a working building system on Linux, BSD Mac
OSX and Windows and different flavors of compilers, documentation. There is
also an evolving ruby script to convert autotools files to CMake in KDE
svn.

I imagine than in siwx months, LyX will have a better visibility to choose
between scons and CMake.

The 'dashboard' is also a nice feature for monitoring cross-platform
http://public.kitware.com/dashboard.php?name=kde

Cheers,
Charles
-- 
http://www.kde-france.org



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Joost Verburg

Abdelrazak Younes wrote:
It is already generating it my friend. I was trying to improve the 
present build system which is close to sxxxt as far as I am concerned 
with windows. You say you are caring about portability across old Unix 
and other exotic system but I reckon there are *much* more users on 
windows than the sum of all those other system. It's not that I like 
Windows (far from it) but I am _forced_ to it, so are many others.


I also think that the development of a scons system is a good thing that 
should be supported. The Windows auto* stuff only works on Cygwin and 
supports nothing else than GCC.


A good scons system will make it possible to compile using MinGW, 
Microsoft C++, Borland or whatever using the same scripts.


Joost


Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Abdelrazak Younes

Lars Gullik Bjønnes a écrit :

Abdelrazak Younes <[EMAIL PROTECTED]> writes:

| First thanks to JMarc and Georg for a great Friday :-)
| 
| Angus rightfully warned me that I will face great resistance here wrt

| to autotools. I believe it is more inertia than a religious issue.
| People are just afraid of potential bad thing that could happen if we
| touch the build system.
| 
| I would like to propose a simpler way forward.

| 1) move non lyx core source code that depend on "config.h" defined
| macro to "src/support/": mainly gettex.[Ch] and messages.[Ch]

Can you please forget this obsession with the  file. As long
as we use autotools it stays in _all_ source files.


For once, could you please read the whole discussion before putting some 
disease in my mind. This is the fifth time I am acknowledging that 
config.h is here to stay (that makes twice to you). I was _trying_ to 
get you understand that most of the macro defined there are support 
oriented and two config.h (one for support and one for the rest) would 
make sense.



And I don't care one iota that your precious scons does not generate
it.


It is already generating it my friend. I was trying to improve the 
present build system which is close to sxxxt as far as I am concerned 
with windows. You say you are caring about portability across old Unix 
and other exotic system but I reckon there are *much* more users on 
windows than the sum of all those other system. It's not that I like 
Windows (far from it) but I am _forced_ to it, so are many others.



| It is not friday so no need to argue for days. A simple yes or no from
| main historic devels should be enough.

Lars: No blanket permission to do anything, one thing at a time, clear and well 
thought out.

| I could begin to move gettex.[Ch] and messages.[Ch] to "src/support/";
| would a patch like that will be accepted?

Not really part of a support lib, it is support yes, but not
independant supprt... perhaps.


I don't care anymore about autotools and source tree, I will try to help 
improve scons support which I am sure will help me improving my workflow 
whithout having to cleanup config.h and the source tree first.


Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Lars Gullik Bjønnes
Abdelrazak Younes <[EMAIL PROTECTED]> writes:

| Georg Baum a écrit :
| > Am Samstag, 6. Mai 2006 11:39 schrieb Abdelrazak Younes:
| >> First thanks to JMarc and Georg for a great Friday :-)
| >>
| >> Angus rightfully warned me that I will face great resistance here
| >> wrt to autotools. I believe it is more inertia than a religious
| >> issue. People are just afraid of potential bad thing that could
| >> happen if we touch the build system.
| > I don't fear that bad things could happen to the build system. I
| > think that a scons-based build system could work quite well for you
| > and me and other people with "mainstream" systems and enough
| > knowledge about library dependencies etc. who don't rely on binary
| > packages.
| > I still fear that you don't know how much the auto stuff does for
| > us, and that such a new build system would break LyX for some more
| > exotic configurations, and that it will ve a lot of work to create
| > it (but I am beginning to repeat myself, so I'll stop now).
| 
| Yes and I still think you are overestimating what is in config.h as
| proven in my analysis. So that's a "no" for you.

Not all that the autotools do are in config.h

-- 
Lgb



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-08 Thread Lars Gullik Bjønnes
Abdelrazak Younes <[EMAIL PROTECTED]> writes:

| First thanks to JMarc and Georg for a great Friday :-)
| 
| Angus rightfully warned me that I will face great resistance here wrt
| to autotools. I believe it is more inertia than a religious issue.
| People are just afraid of potential bad thing that could happen if we
| touch the build system.
| 
| I would like to propose a simpler way forward.
| 1) move non lyx core source code that depend on "config.h" defined
| macro to "src/support/": mainly gettex.[Ch] and messages.[Ch]

Can you please forget this obsession with the  file. As long
as we use autotools it stays in _all_ source files.

And I don't care one iota that your precious scons does not generate
it.

| It is not friday so no need to argue for days. A simple yes or no from
| main historic devels should be enough.

Lars: No blanket permission to do anything, one thing at a time, clear and well 
thought out.

| I could begin to move gettex.[Ch] and messages.[Ch] to "src/support/";
| would a patch like that will be accepted?

Not really part of a support lib, it is support yes, but not
independant supprt... perhaps.

(especially messages.C)

-- 
Lgb



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-07 Thread Abdelrazak Younes

Angus Leeming a écrit :

Abdelrazak Younes wrote:

Well, I've lost some battles in LyX development already. The problem is
that most of the changes I envision would need full support of
maintainers so I loose. My available time is not much so I can't afford
to spend time on things that will not be accepted. I have the
presumptuousness to think my ideas are interesting so I offer them to
the list just in case. At least I hope this could make an interesting
reading to wannabe developers :-)


I don't think you lose often. Incidentally, I can't see why you're giving
up on moving gettext.[Ch] to support. It's clearly the right thing to do.
I can't remember clearly what's in messages.[Ch] but I imagine you're
correct here too.


That's a classical suggestion tactic ;-). I advocate a big shift so that 
at least a small one could happen.



I think that the discussion got side tracked by your stated desire to
publish libsupport separately from LyX. One thing at a time!


I reckon I am not very good at that...


Off to Seattle now. Input from me will be at best displaced by 10 hours and
at worst none existent for the next two weeks. (For some definition of
best and worst).


Have a nice trip there!

Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-07 Thread Angus Leeming
Abdelrazak Younes wrote:
> Well, I've lost some battles in LyX development already. The problem is
> that most of the changes I envision would need full support of
> maintainers so I loose. My available time is not much so I can't afford
> to spend time on things that will not be accepted. I have the
> presumptuousness to think my ideas are interesting so I offer them to
> the list just in case. At least I hope this could make an interesting
> reading to wannabe developers :-)

I don't think you lose often. Incidentally, I can't see why you're giving
up on moving gettext.[Ch] to support. It's clearly the right thing to do.
I can't remember clearly what's in messages.[Ch] but I imagine you're
correct here too.

I think that the discussion got side tracked by your stated desire to
publish libsupport separately from LyX. One thing at a time!

Off to Seattle now. Input from me will be at best displaced by 10 hours and
at worst none existent for the next two weeks. (For some definition of
best and worst).

-- 
Angus



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Abdelrazak Younes

Jose' Matos a écrit :

On Saturday 06 May 2006 14:54, Abdelrazak Younes wrote:

I guess that would be a "no" from JMarc and Lars so let's just forget
about this thread. Sorry for the noise.


[wise word from an old man]

  Moral of the story: If you believe in something fight for it and choose your 
battles, it is impossible to win everytime. :-)


Well, I've lost some battles in LyX development already. The problem is 
that most of the changes I envision would need full support of 
maintainers so I loose. My available time is not much so I can't afford 
to spend time on things that will not be accepted. I have the 
presumptuousness to think my ideas are interesting so I offer them to 
the list just in case. At least I hope this could make an interesting 
reading to wannabe developers :-)


Thanks Jose,
Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Jose' Matos
On Saturday 06 May 2006 14:54, Abdelrazak Younes wrote:
> I guess that would be a "no" from JMarc and Lars so let's just forget
> about this thread. Sorry for the noise.

  Since it looks that as I am getting old I am getting a bit wiser let me tell 
an history of persistence and success (I hope).

  I always liked python, I still do, if I have to choose between C++ and 
python I will choose python without any second guess.

  Depending on the type of problems, notice that I have programs running for 
months (scientific computing),  I may need to use C++ and I like it and use 
it, but clearly it is not my first choice.

  I have studied the ancient code in the "lyx archaelogy saga" if you 
remember.

  It is an interesting reading no less, and a huge mess, believe me.

  One of parts where I took personal interest was the file format code, it was 
more messier that you could ever imagine, a kludge after another to make the 
code load ancient versions.

  The situation was becoming impossible to maintain, with lyx only expecting 
to maintain code compatibility with the two previous versions. A disaster in 
disguise by other words. I always laugh at the message that lyx had for 
really old files, "Please install lyx 0.10 to read those files".

  In 2001/2002 I suggested the best solution was to move that code externally. 
And clearly I thought that best candidate for the job was a python script.

  Fortunately and at the same time, Dekel Tsur had some python scripts to 
convert some old files to new files.

  I took the general tools from it and generalized the idea.

  The problem of lyx2lyx was the additional dependence on another external 
package, python.

  Yet lyx2lyx proved to be able to refine the lyx file format, after all we 
had more file format changes during 1.3 than before 1.3 (all together).

  Notice that most of the convertions were done by Georg and Jürgen with some 
other by Martin and Angus. And the merit goes to them. :-)

  The addition of lyx2lyx even allowed to do back-compatibility something 
impossible before, notice that this is something that I don't care at all.

  lyx2lyx allowed indirectly the presence of configure.py since python is no 
longer an external dependence.

  If I had some time (impossible in the next couple of months) I intend to 
improve lyx2lyx even further. And FWIW my next target is tex2lyx, I intend to 
convert it to python to integrate it with LyX python module.

  Moral of the story: If you believe in something fight for it and choose your 
battles, it is impossible to win everytime. :-)

> Abdel.

  Unless a change is well thought it will bite you (us) when and where you 
least expect. I learned to hear them, they are a smart bunch and if they 
object usually there is a strong reason. If there is not and you prove them 
that they will admit. Either way we all win. :-)

PS: I am tired and this seems like rubbish then ignore it, please. :-)
-- 
José Abílio


Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Abdelrazak Younes

Juergen Spitzmueller a écrit :

Abdelrazak Younes wrote:

It is not friday so no need to argue for days. A simple yes or no from
main historic devels should be enough.
Lars:
JMarc:
Georg:
Martin:
Juergen:


I don't think you mean Jürgen Vigna, who is a real historic devel, contrary to 
me. For my part, I'd leave the decision to those who are really familiar with 
the build stuff.


Yeas, I meant you, Juergen Spitzmueller. By historic I meant those 
present in the list when I joined in.


I guess that would be a "no" from JMarc and Lars so let's just forget 
about this thread. Sorry for the noise.


Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Juergen Spitzmueller
Abdelrazak Younes wrote:
> It is not friday so no need to argue for days. A simple yes or no from
> main historic devels should be enough.
> Lars:
> JMarc:
> Georg:
> Martin:
> Juergen:

I don't think you mean Jürgen Vigna, who is a real historic devel, contrary to 
me. For my part, I'd leave the decision to those who are really familiar with 
the build stuff.

Jürgen


Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Abdelrazak Younes

Michael Gerz a écrit :
However: If you touch the auto* stuff beware that this will delay 1.5.0 
for months with little benefit for the end user!!!


1.5.0 is not going to happen soon anyway Michael.

Abdel, if I remember correctly, you want to release 1.5.0 rather sooner 
than later because of qt4, outline mode, other new features, and general 
polishing. In addition, I want to have a useable change tracking feature 
as soon as possible. I suggest keeping the auto* stuff in mind but let's 
concentrate on the short-term goals first.


You're probably right, I'll concentrate on Qt4.

Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Abdelrazak Younes

Georg Baum a écrit :

Am Samstag, 6. Mai 2006 11:39 schrieb Abdelrazak Younes:

First thanks to JMarc and Georg for a great Friday :-)

Angus rightfully warned me that I will face great resistance here wrt to 
autotools. I believe it is more inertia than a religious issue. People 
are just afraid of potential bad thing that could happen if we touch the 
build system.


I don't fear that bad things could happen to the build system. I think 
that a scons-based build system could work quite well for you and me and 
other people with "mainstream" systems and enough knowledge about library 
dependencies etc. who don't rely on binary packages.
I still fear that you don't know how much the auto stuff does for us, and 
that such a new build system would break LyX for some more exotic 
configurations, and that it will ve a lot of work to create it (but I am 
beginning to repeat myself, so I'll stop now).


Yes and I still think you are overestimating what is in config.h as 
proven in my analysis. So that's a "no" for you.



What do you gain by this? You still need auto for the library.


Yes.

Are you aware of the fact that such a separation (which might have its 
theoretical benefits) would create lots of additional maintenance work? 


I don't think so but hey, this is just my opinion, that's why I am asking.

If you truly separate it you need to define a public API that can't be 
changed easily. Right now we can change the API by simply providing new 
functions or alter existing ones, and that is a real plus.


You will still be free to change it during the development phase. Only 
the stable series will have a stable API. Quite a lot of project opted 
for the multiple library approach and the lyx tree is mostly ready for this.


I could begin to move gettex.[Ch] and messages.[Ch] to "src/support/"; 
would a patch like that will be accepted?


Apart from the fact that I am not going to give the final answer I'd say 
that moving around this stuff is a waste of time. Angus and Jean-Marc 
already provided good reasons to retain config.h in every .C file. I 
don't see any benefit that outweighs this.


I have acknowledged this. I am just saying that most of the macro are 
for support function so it seems logical to me to separate in too build 
systems as autotools is apparently not very good at creating different 
config file.


Before you begin to move 
things around you have to get the OK for removing config.h from .C files, 
and I predict that this is not going to happen.


OK, I guess you're right. Forget about all this. No need to further 
discuss that.


Abdel.



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Georg Baum
Am Samstag, 6. Mai 2006 11:39 schrieb Abdelrazak Younes:
> First thanks to JMarc and Georg for a great Friday :-)
> 
> Angus rightfully warned me that I will face great resistance here wrt to 
> autotools. I believe it is more inertia than a religious issue. People 
> are just afraid of potential bad thing that could happen if we touch the 
> build system.

I don't fear that bad things could happen to the build system. I think 
that a scons-based build system could work quite well for you and me and 
other people with "mainstream" systems and enough knowledge about library 
dependencies etc. who don't rely on binary packages.
I still fear that you don't know how much the auto stuff does for us, and 
that such a new build system would break LyX for some more exotic 
configurations, and that it will ve a lot of work to create it (but I am 
beginning to repeat myself, so I'll stop now).

> I would like to propose a simpler way forward.
> 1) move non lyx core source code that depend on "config.h" defined macro 
> to "src/support/": mainly gettex.[Ch] and messages.[Ch]
> 2) make src/support/ a real library with its own autotools machinery. 
> This library could be code liblyxsupport.
> 3) simplify the build system of LyX (the executable) to the bare minimum 
> (ENABLE_ASSERTION, BOOST_*, etc).
> 
> All the tricky portability issues would be handled by 
> liblyxsupport.[a,so]. Of course this would mean that one needs to build 
> independently two things instead of one. But I guess this is not a 
> problem as it could be automated. The obvious advantage (to me at least) 
> is of course that the LyX exe building system would be very easy to port 
> to scons, cmake, visual studio, etc...

What do you gain by this? You still need auto for the library.

> Apart from that, I believe there  
> are additional advantages with regard to maintenance, binary 
> distribution, etc. It will also force developers to have clear and 
> stable API in the support library.

Are you aware of the fact that such a separation (which might have its 
theoretical benefits) would create lots of additional maintenance work? 
If you truly separate it you need to define a public API that can't be 
changed easily. Right now we can change the API by simply providing new 
functions or alter existing ones, and that is a real plus.

> It is not friday so no need to argue for days. A simple yes or no from 
> main historic devels should be enough.
> Lars:
> JMarc:
> Georg:
> Martin:
> Juergen:
> Andre:
> Jose:
> Angus:
> Michael:
> 
> Am I missing somebody?

I am historic? Not at all (or you will be historic in next year, too).

> I could begin to move gettex.[Ch] and messages.[Ch] to "src/support/"; 
> would a patch like that will be accepted?

Apart from the fact that I am not going to give the final answer I'd say 
that moving around this stuff is a waste of time. Angus and Jean-Marc 
already provided good reasons to retain config.h in every .C file. I 
don't see any benefit that outweighs this. Before you begin to move 
things around you have to get the OK for removing config.h from .C files, 
and I predict that this is not going to happen.

My config.h is not even regenerated when I run configure again, as long as 
I do not specify options that really result in changed config.h content.
If your config.h is regenerated too often report this as a bug to the auto 
people, or create a fake config.h for yourself and use a script instead 
of "make" that copies this one over the auto-created one every time 
before you compile.


Georg



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Michael Gerz

Abdelrazak Younes wrote:


I would like to propose a simpler way forward.
1) move non lyx core source code that depend on "config.h" defined 
macro to "src/support/": mainly gettex.[Ch] and messages.[Ch]
2) make src/support/ a real library with its own autotools machinery. 
This library could be code liblyxsupport.
3) simplify the build system of LyX (the executable) to the bare 
minimum (ENABLE_ASSERTION, BOOST_*, etc).


It is not friday so no need to argue for days. A simple yes or no from 
main historic devels should be enough.

Michael:


I am not one of the core LyX developers and I have no experience with 
auto* and scons.


However: If you touch the auto* stuff beware that this will delay 1.5.0 
for months with little benefit for the end user!!!


Abdel, if I remember correctly, you want to release 1.5.0 rather sooner 
than later because of qt4, outline mode, other new features, and general 
polishing. In addition, I want to have a useable change tracking feature 
as soon as possible. I suggest keeping the auto* stuff in mind but let's 
concentrate on the short-term goals first.


Regards,

Michael



Re: Moving gettex.[Ch] and messages.[Ch] to src/support/

2006-05-06 Thread Martin Vermeer
On Sat, May 06, 2006 at 11:39:37AM +0200, Abdelrazak Younes wrote:
> First thanks to JMarc and Georg for a great Friday :-)
> 
> Angus rightfully warned me that I will face great resistance here wrt to 
> autotools. I believe it is more inertia than a religious issue. People 
> are just afraid of potential bad thing that could happen if we touch the 
> build system.

I am one of those.
 
> I would like to propose a simpler way forward.
> 1) move non lyx core source code that depend on "config.h" defined macro 
> to "src/support/": mainly gettex.[Ch] and messages.[Ch]
> 2) make src/support/ a real library with its own autotools machinery. 
> This library could be code liblyxsupport.
> 3) simplify the build system of LyX (the executable) to the bare minimum 
> (ENABLE_ASSERTION, BOOST_*, etc).
> 
> All the tricky portability issues would be handled by 
> liblyxsupport.[a,so]. Of course this would mean that one needs to build 
> independently two things instead of one. But I guess this is not a 
> problem as it could be automated. The obvious advantage (to me at least) 
> is of course that the LyX exe building system would be very easy to port 
> to scons, cmake, visual studio, etc... Apart from that, I believe there 
> are additional advantages with regard to maintenance, binary 
> distribution, etc. It will also force developers to have clear and 
> stable API in the support library.
> 
> It is not friday so no need to argue for days. A simple yes or no from 
> main historic devels should be enough.
> Lars:
> JMarc:
> Georg:
> Martin: Show us that 

1) the concept works, i.e., it really makes things simpler and leads to
less recompilation 
2) it doesn't break any rarely tested exotic platform builds.

> Juergen:
> Andre:
> Jose:
> Angus:
> Michael:
> 
> Am I missing somebody?
> 
> I could begin to move gettex.[Ch] and messages.[Ch] to "src/support/"; 
> would a patch like that will be accepted?

That seems relatively risk-free... but shouldn't we have 1.4.2 out
before doing big things with the source tree?

- Martin



pgp95wx4g814w.pgp
Description: PGP signature