On Thu, May 25, 2017 08:09, Simon Geard wrote:
> On Wed, 2017-05-24 at 15:14 +0000, William Harrington wrote:
>> In the past I have attempted to use topological sorting (tsort). This
>> method takes a bit of time if you start with an App with a lot of
>> deps. A rought example through book and required/recommended deps and
>> coming up with something for Vim (have to work through the circular
>> deps):
>>
>
> And the easiest way to implement a topo sort is to re-use Make, since
> translating a dependency graph into a linear ordering is pretty much
> what Make is designed for. That's how my B/LFS system used to be
> maintained... a script to generate a Makefile from sources like the
> books.
>
> Simon.--
Hello Simon,
So pretty much like this right? Can work around circular deps real well
with Make.
cat Makefile
vim: Gtk2 GPM Lua Python2 Ruby
@echo vim
Gtk2: Atk2 Gdk-pixbuf Pango hicolor-icon-theme
@echo Gtk2
Atk2: GLib
@echo Atk2
Gdk-pixbuf: GLib libjpeg-turbo Libpng libTIFF Xorg-Libs
@echo Gdk-pixbuf
Pango: Fontconfig GLib Cairo Xorg-Libs
@echo Pango
Cairo: Libpng Pixman Fontconfig GLib Xorg-Libs
@echo Cairo
Pixman:
@echo Pixman
hicolor-icon-theme:
@echo hicolor-icon-theme
Fontconfig: FreeType2-HarfBuzz
@echo Fontconfig
FreeType2-HarfBuzz: HarfBuzz Libpng Which
@echo FreeType2
FreeType2:
@echo FreeType2
HarfBuzz: GLib ICU FreeType2
@echo HarfBuzz
ICU: LLVM-Clang
LLVM-Clang: CMake Libffi Python2
@echo LLVM-Clang
CMake: cURL libarchive
@echo CMake
cURL: CACerts OpenSSL
@echo cURL
libarchive: libXML2 LZO OpenSSL
@echo libarchive
libXML2: Python2
@echo libXML2
LZO:
@echo LZO
Which:
@echo Which
Xorg-Libs: Fontconfig libxcb
@echo Xorg-Libs
libxcb: libXau xcb-proto libXdmcp
@echo libxcb
libXau: Xorg-proto
@echo libXau
xcb-proto: Python2 Xorg-build-env
@echo xcb-proto
libXdmcp: Xorg-proto
@echo libXdmcp
GLib: Libffi Python2 PCRE
@echo GLib
PCRE:
@echo PCRE
Libffi:
@echo Libffi
Xorg-proto: util-macros Sudo Wget-OpenSSL
@echo Xorg-proto
util-macros: Xorg-build-env
@echo util-macros
Xorg-build-env:
@echo Xorg-build-env
Sudo:
@echo Sudo
Wget:
@echo Wget
Wget-OpenSSL: Wget CACerts OpenSSL Python3
@echo Wget-OpenSSL
CACerts: OpenSSL Wget
OpenSSL:
@echo OpenSSL
Python3: Libffi
@echo Python3
Python2: Libffi
@echo Python2
GPM:
@echo GPM
Lua:
@echo Lua
Ruby: Libffi OpenSSL
@echo Ruby
libjpeg-turbo: NASM Yasm
@echo libjpeg-turbo
Libpng:
@echo Libpng
libTIFF:
@echo libTIFF
NASM:
@echo NASM
Yasm: Python2
@echo Yasm
Output:
Libffi
Python2
PCRE
GLib
Atk2
NASM
Yasm
libjpeg-turbo
Libpng
libTIFF
OpenSSL
Wget
cURL
libXML2
LZO
libarchive
CMake
LLVM-Clang
FreeType2
HarfBuzz
Which
FreeType2
Fontconfig
Xorg-build-env
util-macros
Sudo
Python3
Wget-OpenSSL
Xorg-proto
libXau
xcb-proto
libXdmcp
libxcb
Xorg-Libs
Gdk-pixbuf
Pixman
Cairo
Pango
hicolor-icon-theme
Gtk2
GPM
Lua
Ruby
vim
Sincerely,
William
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page