WIP Improving Windows "build deps" download scripts
#1
Hello,

I am new to developing for XBMC (err..."Kodi" Big Grin), and since I'm currently struggling with the build deps scripts, I thought I would improve them, for the general good of the community. The first thing I've done is to add support for specifying a custom mirror (the default mirror happened to be down when I was first trying to download Kodi's dependencies). I've since thought of a couple of other improvements that I think people would like:
  • Writing the detailed spew (e.g., the output of 'unzip' commands) into a log file rather than the console
  • Colorizing important text (such as "download failed"), so that it's more noticeable
  • Reporting a list of failed packages at the end of the script, so that if there were any errors, these are made clear to the developer

Question:
One thing that caught my attention is that there are two kinds of packages on the "deps" mirrors: (1) those that have been pre-packaged to be unzipped directly into the xbmc file system ("formed" packages), and (2) those that need post-processing. According to the comments in the 0_packagelist.txt file, the "formed" packages are the "new" way, whereas the others are "old". Is the intention to convert all of the old-style packages into the new "formed"-style packages, and then do away with the old ones entirely? Assuming this is the desired direction to go, I would be willing to do the work of repackaging the old ones to use the new package structure. I'd just need to know how/where to upload the new ones to be distributed to the mirrors.

If the "old" packages were all converted to the "new" package structure, then I think I could coalesce everything down to just one or two batch files...there'd be no need for a separate get_formed.bat, for example. Having it all in one script would make it much easier to do a good job of reporting errors to the user (passing information between batch files is...hard).

Thoughts?
Reply
#2
be carefull - we might need this stuff in a splitup way for working with our continuous integration (jenkins.xbmc.org) - not sure - a windows dev would need to jump in here...
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#3
The old packages can be migrated to the current packagelist format. Not sure how long we'll keep that as we slowly move to a cmake based buildsystem. Using precompiled libs was a good idea when we started but today we have a mess of different dlls from the same lib floating around. The goal is to compile every third party lib on our own (like ist done with depends on Linux/OSX) one day.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply

Logout Mark Read Team Forum Stats Members Help
Improving Windows "build deps" download scripts0