|
From: Geert J. <ge...@ko...> - 2013-10-09 17:07:33
|
Hi, I really like mingw-get as a tool to ease the installation of an mingw/msys environment. I'm unfortunately having some trouble using it for an scripted build environment set up. The script is supposed to install a number of packages via mingw-get the first time it's called. It selects package versions based on a configuration file. If a package version is updated in that configuration file, the next call of the script should update the relevant package(s). This turns out to be very difficult to do. The command line version of mingw-get doesn't have an interface to query for installed packages. So another way has to be found to detect this. In a previous question on this same list, it was suggested to parse the manifest files for this. I have tried this, but that also turns out to be pretty hard to do in a scripted environment, mostly because package names are not consistent. A few examples: - packages are names <subsystem>-name-<subcomponent>, but tarballs are names package- <some other stuff>-<subsystem>-<subcomponent>.<packagingmethod> => This means each package to install must be mangled before the tarball can be checked in the manifest file. This is still possible to work around though, if at least all packages followed the same rules. - package gcc-g++ uses tarballs named gcc-c++ => So to query if package gcc-g++ is installed I have to write an exception in my query code to search for gcc-c++ instead. At this point I have given up for now. Is there another way I can figure out which packages are installed in a scripted environment ? The mingw-get gui obviously can do it, so the logic is somewhere in mingw-get. How hard would it be to expose similar information on the command line ? For example as extra info in the mingw-get list command ? Or a separate query command ? Geert |