tpoechtrager / cctools-port

Apple cctools port for Linux and *BSD

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Q: quick building for different targets

Felixoid opened this issue · comments

Hello, and many thanks for the project!

I have a question: is it possible to speed up building for different platforms?

Currently, we do the next thing in a project:

git clone --depth 1 https://github.com/tpoechtrager/cctools-port.git \
    && cd cctools-port/cctools \
    && ./configure --prefix=/cctools --with-libtapi=/cctools \
        --target=x86_64-apple-darwin \
    && make install \
    && make clean \
    && ./configure --prefix=/cctools --with-libtapi=/cctools \
        --target=aarch64-apple-darwin \
    && make install

As it's rebuilding the whole project twice, I think it's suboptimal.

Although, if I don't clean the project via make clean, I have the same files for different platforms:

sha256sum /cctools/bin/* | sort # without clean
0c2f5efdb09a23f5889d5f4775bc2cd6c53b5b933923c64f4fd7f5215482d0fe  /cctools/bin/aarch64-apple-darwin-check_dylib
0c2f5efdb09a23f5889d5f4775bc2cd6c53b5b933923c64f4fd7f5215482d0fe  /cctools/bin/x86_64-apple-darwin-check_dylib
1111b978e54130fa1d492eb4c8652c627a6fdb57b606097c75d4903974d1c3a7  /cctools/bin/aarch64-apple-darwin-ar
1111b978e54130fa1d492eb4c8652c627a6fdb57b606097c75d4903974d1c3a7  /cctools/bin/x86_64-apple-darwin-ar
# VS
sha256sum /cctools/bin/* | sort # with clean
072c1d951b8632c87375a9a381bae10c3d0ae99dfc6100f3e268d325b8751763  /cctools/bin/aarch64-apple-darwin-seg_addr_table
0a7e79ca48da14a0ee67ce9eb80194f641cf2692ec0c00181b13d7973ccef6b6  /cctools/bin/aarch64-apple-darwin-strip
0c2f5efdb09a23f5889d5f4775bc2cd6c53b5b933923c64f4fd7f5215482d0fe  /cctools/bin/x86_64-apple-darwin-check_dylib
1111b978e54130fa1d492eb4c8652c627a6fdb57b606097c75d4903974d1c3a7  /cctools/bin/x86_64-apple-darwin-ar

So, do you think it's possible to build the project for multiple targets simultaneously?

Is it so rare case, that nobody uses it?