|
|
Home » Community » U++ community news and announcements » Upp 2007.1rc4 released
|
|
|
Re: Upp 2007.1rc4 released [message #8842 is a reply to message #8822] |
Tue, 03 April 2007 07:41 |
fallingdutch
Messages: 258 Registered: July 2006
|
Experienced Member |
|
|
Good Morning,
ebojd wrote on Mon, 02 April 2007 15:02 | I pulled a bonehead yesterday when I wrote the upp-portage ebuild for rc4 and just removed the old rc3 before testing rc4... DOH.
Here is a patch for the top Makefile and some questions for the uppsrc/ide/Makefile.
*) is there a reason why pkg-config was not used in the uppsrc/ide/Makefile instead of hardcoding?
|
the uppsrc/ide/Makefile is a slightly changed Makefile which was generated by theide and theide hardcodes it.
ebojd wrote on Mon, 02 April 2007 15:02 |
Top level Makefile:
*) move all: before theide: -- if no arguments are given to make,
it will run the first one which is assumed to be all.
|
yes, sounds good.
ebojd wrote on Mon, 02 April 2007 15:02 |
*) added - infront of install so that it will deal appropriately
with files that already exist, etc.
|
what did you do? don't see the change in the patch either.
ebojd wrote on Mon, 02 April 2007 15:02 |
*) added trailing / to all install (cp -r *) lines. I do
not know where the bug is, but it will sometimes install
the files in a directory one above the destination.
|
yes, thought they have been there as you see the install lines.
ebojd wrote on Mon, 02 April 2007 15:02 |
*) remove clean from all -- because the "make all" and "make
install" are seperate.
|
ok
ebojd wrote on Mon, 02 April 2007 15:02 |
*) added mkdir -p before copying Common and other files.
"cp -r Common /usr/share/upp" will not copy the Common
diretory into /usr/share/upp but it's contents.
|
yes sure makes sense
ebojd wrote on Mon, 02 April 2007 15:02 |
*) current Makefiles break gentoo's multithreaded make. I'll
have to investigate this one.
|
please do so, i would like the makefile to run on as many systems as possible
ebojd wrote on Mon, 02 April 2007 15:02 |
*) change $(DESTDIR)/usr/... to $(DESTDIR)/... -- if the DESTDIR
is set to usr, then everything is installed into /usr/usr.
Destdir should be set to something reasonable like /usr, /opt,
etc.
|
I am sorry, but that is impossible for me - the package builder asks for a $DESTDIR to create a temporary folder where the root directory is simulted to create the package.
Any Idea how to get around this are welcome!
ebojd wrote on Mon, 02 April 2007 15:02 |
I'm currently rebuilding upp (hopefully for the last time), but the folling patches should be helpful. I'll post the new upp-portage as soon as I know that it builds properly and pasts the QA tests.
The patch file should be attached.
|
Thank you a lot for your help, will apply all patches except the ones with $DESTDIR
Bas
|
|
|
Re: Upp 2007.1rc4 released [message #8843 is a reply to message #8833] |
Tue, 03 April 2007 07:44 |
fallingdutch
Messages: 258 Registered: July 2006
|
Experienced Member |
|
|
ebojd wrote on Mon, 02 April 2007 18:55 | OK... What do you mean by "Makefile generator patch"?
|
The uppsrc/ide/Makefile is generated by Ultimate++ with the Makefilegenerator (Build->create Makefile)
Bas
[Update:] attached the current top-level Makefile.
Ebo if you would have a look at it then i will release .rc5
-
Attachment: Makefile
(Size: 1.04KB, Downloaded 329 times)
[Updated on: Tue, 03 April 2007 07:51] Report message to a moderator
|
|
|
Re: Upp 2007.1rc4 released [message #8844 is a reply to message #8842] |
Tue, 03 April 2007 15:35 |
ebojd
Messages: 225 Registered: January 2007 Location: USA
|
Experienced Member |
|
|
Sorry for the delay. I got home and went promptly to sleep last night...
fallingdutch wrote on Tue, 03 April 2007 00:41 |
ebojd wrote on Mon, 02 April 2007 15:02 |
*) added - infront of install so that it will deal appropriately
with files that already exist, etc.
|
what did you do? don't see the change in the patch either.
|
The comment should have read "added a '-' in front of install and
cp...". Adding a '-' infront of a makefile directive instructs make to continue processing even if an error offurs. That way I can work on as many bugs as possible at one compile This should likely be removed from the final version. We might want to discuss that
though.
fallingdutch wrote on Tue, 03 April 2007 00:41 |
ebojd wrote on Mon, 02 April 2007 15:02 |
*) added trailing / to all install (cp -r *) lines. I do
not know where the bug is, but it will sometimes install
the files in a directory one above the destination.
|
yes, thought they have been there as you see the install lines.
|
Sorry, my bad. This was a misattempt to fix the copy problem
mentioned below (that was eventually solved by first creating the
directory with "mkdir -p". It should be removed.
fallingdutch wrote on Tue, 03 April 2007 00:41 |
ebojd wrote on Mon, 02 April 2007 15:02 |
*) current Makefiles break gentoo's multithreaded make. I'll
have to investigate this one.
|
please do so, i would like the makefile to run on as many systems as possible
|
This one is subtle... Basically, make can run in multi threaded
mode. Gentoo portage by default sets the number of processes (or
jobs) to be the number of processors in the system +1. It appears that how make does this is for each given target run all dependencies simultaniously. So, when we get to ide/Makefile's lines:
all: install $(OutFile)
install:
-mkdir -p $(OutDir)
-mkdir -p $(OutDir_ide)
...
$(OutFile): \
$(OutDir_ide)SelectPkg.o \
$(OutDir_ide)UppWspc.o \
...
make will start the compilation of $(OutDir_ide)SelectPkg.o
simultaniously with making the $(OutDir_ide), etc., directories. So the problem is basically a race condition.
It is going to take me a little time to figure out how to patch this in a sane manner. My first attempts will be to play with the ordering of the dependencies...
I would also like to rename the install directive to pre-build or
something more intuitive because this one is not *really* installing anything, but preparing the system to build.
something along the lines of:
all: prebuild
$(MAKE) $(OutFile)
prebuild:
-mkdir -p $(OutDir)
-mkdir -p $(OutDir_ide)
...
$(OutFile): \
$(OutDir_ide)SelectPkg.o \
$(OutDir_ide)UppWspc.o \
...
There is probably a better way to fix the dependencies, but it is
alluding in this red hot moment.
fallingdutch wrote on Tue, 03 April 2007 00:41 |
ebojd wrote on Mon, 02 April 2007 15:02 |
*) change $(DESTDIR)/usr/... to $(DESTDIR)/... -- if the DESTDIR
is set to usr, then everything is installed into /usr/usr.
Destdir should be set to something reasonable like /usr, /opt,
etc.
|
I am sorry, but that is impossible for me - the package builder asks for a $DESTDIR to create a temporary folder where the root directory is simulted to create the package.
Any Idea how to get around this are welcome!
|
The easy way, and possibly not the best, is to add /usr to $DESTDIR and remove it from the hardcoaded path. I will take a look at the relevent Makefile documentation and see how the Makefile builder can be modified to produce more standard Makefiles <see http://www.gnu.org/software/make/manual/make.html for ideas>
fallingdutch wrote on Tue, 03 April 2007 00:41 |
ebojd wrote on Mon, 02 April 2007 15:02 |
I'm currently rebuilding upp (hopefully for the last time), but the folling patches should be helpful. I'll post the new upp-portage as soon as I know that it builds properly and pasts the QA tests.
The patch file should be attached.
|
Thanks, and I'm testing...
|
Thank you a lot for your help, will apply all patches except the ones with $DESTDIR
Bas[/quote]
Ok. I can easily take care of the $DESTDIR problem myself.
Cheers!
EBo --
|
|
|
|
|
|
|
|
|
|
Goto Forum:
Current Time: Fri Sep 20 07:05:25 CEST 2024
Total time taken to generate the page: 0.03581 seconds
|
|
|