diff --git a/README.md b/README.md index de22d02..c736aa9 100644 --- a/README.md +++ b/README.md @@ -8,16 +8,6 @@ ## How To Use The Makefile -NOTE: As of 12-20-2020 there is a new `make` target called `insecure`. -If you see a problem with `git clone` failing during builds, run `make -insecure` and this should fix it. This is caused by some problem with -how `openssl@1.1` finds its certs. - -This "fix" works by telling both `curl` and `git` to ignore -certificate validation of https. So ... DON'T do this on a -production environment. It's really there for building inside containers -to produce release tarballs. - This `makefile` handles both the bootstrapping and then the full release of a custom linuxbrew based toolset, installed at any location you wish (so long as you have write permission there). @@ -159,9 +149,18 @@ OS header files that are kernel-dependent. If, say, you try to build this on a CentOS 7 instance, but then attempt to deploy to CentOS 5, expect problems. *Always build your deploy image on an - OS that is substantially the same as your targets.* Again, + OS that is substantially the same as your targets.* Again, `docker` is your friend here. + 3. In general, you will get into trouble if you try to build the + tools on an OS whose libraries are newer than the target + machines'. The binaries you build will not be able to find these + newer libraries on the target machines and will fail. So, if you + cannot match your targets exactly, build for the same machine + architecture, but do it on an *older* revision of the OS. The + newer targets usually have backward compatibility with the older + libraries referenced and the tools should run fine. + ## The `brewenv` File diff --git a/makefile b/makefile index 06d8447..bc5a1f6 100644 --- a/makefile +++ b/makefile @@ -15,10 +15,10 @@ TOOLS = tools # Things that have to be built during the bootstrap phase with system tools -BOOTSTRAP = gcc make curl git +BOOTSTRAP = gcc make -# Languages to install after bootstrap but before other packages -LANGS = go perl python +# Support and languages to install after bootstrap but before other packages +LANGS = curl git go perl python # Stuff we want pip to install PIPMODULES = pip ansible pew pythonz-bd @@ -62,12 +62,13 @@ full-build: @echo "Make sure the bootstrap is installed at ${TOOLSDIR}" sudo yum -y install autoconf automake patch perl texinfo - ${BREW} install --verbose ${LANGS} + ${BREW} install -s --verbose ${LANGS} +# ${BREW} reinstall -s --verbose curl ${BREW} link --verbose python ln -nfs ${TOOLSDIR}/bin/python3 ${TOOLSDIR}/bin/python ln -nfs ${TOOLSDIR}/bin/pip3 ${TOOLSDIR}/bin/pip pip install ${PIPMODULES} -U --ignore-installed - ${BREW} install --verbose ${MYTOOLS} + ${BREW} install -s --verbose ${MYTOOLS} ln -nfs ${TOOLSDIR}/bin/vim ${TOOLSDIR}/bin/vi full-release: tidyup