Samba4 seem to not be building anymore outside /source
Using svn rev 18181: Creating /misc/src/build/4.0.0/client Creating /misc/src/build/4.0.0/client/.svn Creating /misc/src/build/4.0.0/client/.svn/text-base Creating /misc/src/build/4.0.0/client/.svn/prop-base Creating /misc/src/build/4.0.0/client/.svn/props Creating /misc/src/build/4.0.0/client/.svn/wcprops Creating /misc/src/build/4.0.0/client/.svn/tmp Creating /misc/src/build/4.0.0/client/.svn/tmp/text-base Creating /misc/src/build/4.0.0/client/.svn/tmp/prop-base Creating /misc/src/build/4.0.0/client/.svn/tmp/props Creating /misc/src/build/4.0.0/client/.svn/tmp/wcprops cp: cannot stat `/home/drizzt/jerry/bzr/samba/SAMBA_4_0/source/include/smb.h': No such file or directory Argument ".main.mk' nor `./main.mk'\n" isn't numeric in division (/) at /home/drizzt/jerry/bzr/samba/SAMBA_4_0/source/build/smb_build/config_mk.pm line 138. Argument "Can't open neither `.." isn't numeric in division (/) at /home/drizzt/jerry/bzr/samba/SAMBA_4_0/source/build/smb_build/config_mk.pm line 138. Illegal division by zero at /home/drizzt/jerry/bzr/samba/SAMBA_4_0/source/build/smb_build/config_mk.pm line 138. configure failed. Exiting....
Created attachment 2127 [details] simple build script Normally run with these steps.... $ cd $HOME/src/samba-4-0/source && ./autogen.sh $ mkdir /misc/src/build/4.0.0 $ cd /misc/src/build/4.0.0 $ build-samba $HOME/src/samba-4-0/source
I need to rework ac_abs_*dir part to take those variables correctly early in configure stage.
Isn't this bug obsolete now? It seems that this is now handled correctly!
It seems that this have been fixed.
I just tried the supplied script, and it failed. Building to tools to use (asn1_compile etc) makes this rather tricky...
This is a problem regarding the build system, so I assign it to Jelmer. The problem is caused due to the partial lack of absolute path names in the makefiles.
Created attachment 3305 [details] Corrected "Makefile"
Created attachment 3306 [details] Corrected "rules.mk"
I've applied your patches with some minor modifications. I doubt this fixes out-of-tree builds completely though, does it?
No, it doesn't fix it completely. It's a start.
Created attachment 3307 [details] An improved version of the build script
Created attachment 3308 [details] Readme for build system Removed the reference to "configure.in" in the readme file for the SAMBA 4build system.
Created attachment 3309 [details] Corrected "main.mk" This introduces the "srcdir" environment variable.
Created attachment 3310 [details] Proposed version of "config_mk.pm" I propose the remotion of the "for" loop to search the makefile snippets either in the build or source dir, because the "open" calls generate a lot of warnings. The "main.pl" also prints out some warnings about an uninitialized string in line 58, but I haven't discovered the reason.
Created attachment 3311 [details] Corrected "config.mk" of Heimdal
Okay, now with my patches applied, "make" invoked with the build script reaches the state where the partial builded objects are made. The first seems to be "replace_hostcc.o". But I've no idea where to change there the path (I've only found an entry in "data.mk" which is autogenerated).
Comment on attachment 3311 [details] Corrected "config.mk" of Heimdal Applied
Created attachment 3579 [details] Build script - Removed one of the two invocations of "make"
Comment on attachment 3308 [details] Readme for build system I've been wrong here. The original is correct.
Jelmer, does your new build system change something regarding this bug? Does it finally support the relative paths fully?
I've pushed a fix which finally allows us to do the build invoke from the outside of "source4" using the new WAF buildsystem. See: http://gitweb.samba.org/samba.git/?p=samba.git;a=commit;h=f3f82496ac1198ffa65d5b2a052838248e0685aa Marking this as "FIXED".
From what I understand we still don't support this properly, even with the waf build.
I can't really unassign, but I guess tridge is the best assignee for the waf build.
Comment on attachment 3310 [details] Proposed version of "config_mk.pm" Well, I really think it matters how the reporter has thought it at the beginning. So it would be nice if Simo could explain his satisfaction in combination with my solution. Otherwise I really prefer to close this issue.
(In reply to comment #26) > (From update of attachment 3310 [details]) > Well, I really think it matters how the reporter has thought it at the > beginning. > So it would be nice if Simo could explain his satisfaction in combination with > my solution. > Otherwise I really prefer to close this issue. The request is to be able to build in a directory like source4/mybuild without anything changing outside of this directory. If that has been achieved the bug is fixed, otherwise it isn't. The reason is that this way I can do multiple builds with different build options w/o any one of them interfering with any other. Simo.
Well, so do you think that my patch doesn't fit your needs, Simo? You can keep various copies in various directories which don't interfer each other and you can do the build from outside of the "source4" directories (see my commit comment which is referenced by the URL).
Tridge, it would be really nice to hear your opinion here. In my eyes this is fixed with my commit (URL).
Well, I close this until I hear another argument.