clearlinux / common

Developer tooling framework
GNU General Public License v3.0
54 stars 23 forks source link

install-local: don't install <package>-dev #17

Open jurobystricky opened 4 years ago

jurobystricky commented 4 years ago

"make install-local" is a very useful and convenient way to test built RPMs locally, it installs all built RPMs on the built machine. However, a better granulation would be nice, in particular an additional "make" target that excludes package-dev RPMs. The reason is that by default .so files/symlinks are installed in -dev RPM packages and not in the -lib RPMs. Unfortunately, there are some apps/utilities that need the .so files at run-time. So these utilities would run just fine with the current "make install-local" on the local machine. But later on, once you build an actual bundle with the RPMs, you may get errors due to missing .so files as generally bundles do not contain -dev RPMs and hence do not contain .so files. Therefore by not installing -dev RPMs we would detect the missing .so files much sooner (and allow user to rebuild the RPMs with .so files in -lib packages instead.)

In principle, the new "make" target could/should exclude all RPMs that don't make it into the bundle.

phmccarty commented 4 years ago

Sounds like a nice idea. A new target would be okay, or perhaps install-local could be extended to simply skip a -dev RPM (e.g. make install-local NODEV=1).