Husky has two sets of makefiles: "universal" suitable for different operating systems and "legacy" suitable only for a specific operating system. I didn't touch the second ones, but I rewrote the first ones from scratch. What shortcomings made me do this, and what has changed? Normally,
if we built a program using a makefile, re-accessing the makefile should not cause a rebuild. It didn't happen. A properly written makefile should allow parallel execution. That didn't happen either. And finally, to build each subsequent Husky subproject, it was necessary to install all the previous ones. It was inconvenient.
Now there is a list of programs that we want to build in the "huskymak.cfg"
configuration file, and they are all built at once, in one call of the makefile, without the need for intermediate installations. Parallel execution works.
Now there is a central makefile managing the makefiles of subprojects. It lies in "huskybse". There are also scripts there that perform auxiliary actions and run the build. There is no need to download the next version of
programs separately before build. If there were any changes, they would be downloaded automatically. This also applies to makefiles, scripts, and the "huskymak.cfg" configuration.
Thanks for your makefile changes!
I haven't tested those yet, but in the meantime I noticed the CMake
build is unfortunately now broken because cvsdate.h is no longer being generated:
I haven't tested those yet, but in the meantime I noticed the CMake
build is unfortunately now broken because cvsdate.h is no longer
being generated:
Yes, I know and I'll fix it.
https://github.com/huskyproject/huskybse
and click on the "INSTALL.asciidoc" file.
https://github.com/huskyproject/huskybse
and click on the "INSTALL.asciidoc" file.
First, thank you for doing this Michael!
The only question I have is (and to avoid any possible issues), after having ../huskyproject already installed from git as well as any
modules I've already installed and am using via "the old way", is it
safe to follow INSTALL.asciidoc with that layout? Or do you recommend starting over and letting init_build recreate the new structure?
I'm probably just going to start over anyway, since all current
binaries are out of the project directories anyway. But hopefully this question was on the mind of others as well, and your recommendation
will point them in the right direction before making their own mess.
;)
Sysop: | digital man |
---|---|
Location: | Riverside County, California |
Users: | 1,035 |
Nodes: | 15 (1 / 14) |
Uptime: | 235:08:38 |
Calls: | 747 |
Calls today: | 7 |
Files: | 95,170 |
U/L today: |
1 files (593K bytes) |
D/L today: |
1,297 files (187M bytes) |
Messages: | 298,866 |
Posted today: | 1 |