@@ -56,8 +56,8 @@ RUN set -eux \
5656 musl-dev \
5757 musl-dev:amd64 \
5858 musl-tools \
59- gcc-aarch64 -linux-gnu \
60- g++-aarch64 -linux-gnu \
59+ gcc-x86-64 -linux-gnu \
60+ g++-x86-64 -linux-gnu \
6161 && apt-get clean \
6262 && rm -rf /var/lib/apt/lists/* \
6363 && true
@@ -123,57 +123,44 @@ RUN set -eux \
123123RUN set -eux \
124124 && tar xvzf "openssl-${OPENSSL_VERSION}.tar.gz" \
125125 && cd "openssl-${OPENSSL_VERSION}" \
126- && echo "Building OpenSSL ${OPENSSL_VERSION} for x86_64 ..." \
126+ && echo "Building OpenSSL ${OPENSSL_VERSION} for aarch64 ..." \
127127 && ls /usr/include/linux \
128- && mkdir -p /usr/local/x86_64-linux-musl/include \
129- && ln -s /usr/include/linux /usr/local/x86_64-linux-musl/include/linux \
130- && ln -s "/usr/include/x86_64-linux-gnu/asm" /usr/local/x86_64-linux-musl/include/asm \
131- && ln -s /usr/include/asm-generic /usr/local/x86_64-linux-musl/include/asm-generic \
132- && env CC=musl-gcc ./Configure no-shared no-zlib \
133- -fPIC --prefix=/usr/local/x86_64-linux-musl \
134- -DOPENSSL_NO_SECURE_MEMORY "linux-x86_64" \
135- && env C_INCLUDE_PATH=/usr/local/x86_64-linux-musl/include/ make depend \
136- && env C_INCLUDE_PATH=/usr/local/x86_64-linux-musl/include/ make -j$(nproc) \
128+ && mkdir -p /usr/local/aarch64-linux-gnu/include \
129+ && env CC=aarch64-linux-gnu-gcc \
130+ ./Configure no-shared no-zlib \
131+ -fPIC --prefix=/usr/local/aarch64-linux-gnu \
132+ -DOPENSSL_NO_SECURE_MEMORY -mno-outline-atomics "linux-aarch64" \
133+ && env C_INCLUDE_PATH=/usr/local/aarch64-linux-gnu/include/ make depend \
134+ && env C_INCLUDE_PATH=/usr/local/aarch64-linux-gnu/include/ make -j$(nproc) \
137135 && make -j$(nproc) install_sw \
138136 && make -j$(nproc) install_ssldirs \
139137 && openssl version \
140138 && rm -rf \
141- /usr/local/x86_64-linux-musl/include/linux \
142- /usr/local/x86_64-linux-musl/include/asm \
143- /usr/local/x86_64-linux-musl/include/asm-generic \
144- && ls -l /usr/local/x86_64-linux-musl \
145- && if ! [ -d /usr/local/x86_64-linux-musl/lib ]; then \
146- ln -s /usr/local/x86_64-linux-musl/lib64 /usr/local/x86_64-linux-musl/lib; \
147- else \
148- mv /usr/local/x86_64-linux-musl/lib /usr/local/x86_64-linux-musl/abc; \
149- mv /usr/local/x86_64-linux-musl/lib64 /usr/local/x86_64-linux-musl/lib; \
150- cp -rp /usr/local/x86_64-linux-musl/abc/. /usr/local/x86_64-linux-musl/lib/; \
151- unlink /usr/local/x86_64-linux-musl/lib/lib64; \
152- rm -rf /usr/local/x86_64-linux-musl/abc; \
153- fi \
139+ /usr/local/aarch64-linux-gnu/include/linux \
140+ /usr/local/aarch64-linux-gnu/include/asm \
141+ /usr/local/aarch64-linux-gnu/include/asm-generic \
142+ && ls -l /usr/local/aarch64-linux-gnu \
154143 && cd .. \
155144 && rm -rf "openssl-${OPENSSL_VERSION}" \
156145 && true
157146
158147RUN set -eux \
159148 && tar xvzf "openssl-${OPENSSL_VERSION}.tar.gz" \
160149 && cd "openssl-${OPENSSL_VERSION}" \
161- && echo "Building OpenSSL ${OPENSSL_VERSION} for aarch64..." \
162- && ls /usr/include/ linux \
163- && mkdir -p /usr/local/ aarch64-linux-gnu/include \
164- && env CC=aarch64-linux-gnu-gcc ./Configure no-shared no-zlib \
165- -fPIC --prefix=/usr/local/aarch64-linux-gnu \
150+ && echo "Building OpenSSL ${OPENSSL_VERSION} for aarch64 musl ..." \
151+ && mkdir -p /usr/local/aarch64- linux-musl/include \
152+ && env CC= aarch64-linux-musl-gcc \
153+ ./Configure no-shared no-engine no-zlib \
154+ -fPIC --prefix=/usr/local/aarch64-linux-musl \
166155 -DOPENSSL_NO_SECURE_MEMORY -mno-outline-atomics "linux-aarch64" \
167- && env C_INCLUDE_PATH=/usr/local/aarch64-linux-gnu /include/ make depend \
168- && env C_INCLUDE_PATH=/usr/local/aarch64-linux-gnu /include/ make -j$(nproc) \
156+ && env C_INCLUDE_PATH=/usr/local/aarch64-linux-musl /include/ make depend \
157+ && env C_INCLUDE_PATH=/usr/local/aarch64-linux-musl /include/ make -j$(nproc) \
169158 && make -j$(nproc) install_sw \
170159 && make -j$(nproc) install_ssldirs \
171- && openssl version \
172160 && rm -rf \
173- /usr/local/aarch64-linux-gnu/include/linux \
174- /usr/local/aarch64-linux-gnu/include/asm \
175- /usr/local/aarch64-linux-gnu/include/asm-generic \
176- && ls -l /usr/local/aarch64-linux-gnu \
161+ /usr/local/aarch64-linux-musl/include/asm \
162+ /usr/local/aarch64-linux-musl/include/asm-generic \
163+ && ls -l /usr/local/aarch64-linux-musl \
177164 && cd .. \
178165 && rm -rf "openssl-${OPENSSL_VERSION}" \
179166 && true
@@ -216,34 +203,44 @@ RUN set -eux \
216203 && rm -rf "openssl-${OPENSSL_VERSION}" \
217204 && true
218205
219- RUN set -eux \
220- && tar xvzf "openssl-${OPENSSL_VERSION}.tar.gz" \
221- && cd "openssl-${OPENSSL_VERSION}" \
222- && echo "Building OpenSSL ${OPENSSL_VERSION} for aarch64 musl..." \
223- && mkdir -p /usr/local/aarch64-linux-musl/include \
224- && env CC=aarch64-linux-musl-gcc \
225- ./Configure no-asm no-engine no-shared no-zlib no-tests no-fuzz-libfuzzer no-fuzz-afl \
226- -fPIC --prefix=/usr/local/aarch64-linux-musl \
227- -DOPENSSL_NO_SECURE_MEMORY -mno-outline-atomics "linux-aarch64" \
228- && env C_INCLUDE_PATH=/usr/local/aarch64-linux-musl/include/ make depend \
229- && env C_INCLUDE_PATH=/usr/local/aarch64-linux-musl/include/ make -j$(nproc) \
230- && make -j$(nproc) install_sw \
231- && make -j$(nproc) install_ssldirs \
232- && rm -rf \
233- /usr/local/aarch64-linux-musl/include/asm \
234- /usr/local/aarch64-linux-musl/include/asm-generic \
235- && ls -l /usr/local/aarch64-linux-musl \
236- && cd .. \
237- && rm -rf "openssl-${OPENSSL_VERSION}" \
238- && true
206+ # TODO:
207+ # RUN set -eux \
208+ # && tar xvzf "openssl-${OPENSSL_VERSION}.tar.gz" \
209+ # && cd "openssl-${OPENSSL_VERSION}" \
210+ # && echo "Building OpenSSL ${OPENSSL_VERSION} for x86_64..." \
211+ # && mkdir -p /usr/local/x86_64-linux-musl/include \
212+ # && ln -s "/usr/include/x86_64-linux-gnu/asm" /usr/local/x86_64-linux-musl/include/asm \
213+ # && env CC=x86_64-linux-musl-gcc \
214+ # ./Configure no-asm no-shared no-zlib no-tests no-fuzz-libfuzzer no-fuzz-afl \
215+ # -fPIC --prefix=/usr/local/x86_64-linux-musl \
216+ # -DOPENSSL_NO_SECURE_MEMORY "linux-x86_64" \
217+ # && env C_INCLUDE_PATH=/usr/local/x86_64-linux-musl/include/ make depend \
218+ # && env C_INCLUDE_PATH=/usr/local/x86_64-linux-musl/include/ make -j$(nproc) \
219+ # && make -j$(nproc) install_sw \
220+ # && make -j$(nproc) install_ssldirs \
221+ # && rm -rf \
222+ # /usr/local/x86_64-linux-musl/include/asm \
223+ # && ls -l /usr/local/x86_64-linux-musl \
224+ # && if ! [ -d /usr/local/x86_64-linux-musl/lib ]; then \
225+ # ln -s /usr/local/x86_64-linux-musl/lib64 /usr/local/x86_64-linux-musl/lib; \
226+ # else \
227+ # mv /usr/local/x86_64-linux-musl/lib /usr/local/x86_64-linux-musl/abc; \
228+ # mv /usr/local/x86_64-linux-musl/lib64 /usr/local/x86_64-linux-musl/lib; \
229+ # cp -rp /usr/local/x86_64-linux-musl/abc/. /usr/local/x86_64-linux-musl/lib/; \
230+ # unlink /usr/local/x86_64-linux-musl/lib/lib64; \
231+ # rm -rf /usr/local/x86_64-linux-musl/abc; \
232+ # fi \
233+ # && cd .. \
234+ # && rm -rf "openssl-${OPENSSL_VERSION}" \
235+ # && true
239236
240237RUN set -eux \
241238 && echo "Testing musl-gcc with OpenSSL..." \
242239 && openssl version \
243240 && echo "int main(){return 0;}" | \
244241 musl-gcc -o test -x c - \
245- -I/usr/local/x86_64 -linux-musl/include \
246- -L/usr/local/x86_64 -linux-musl/lib \
242+ -I/usr/local/aarch64 -linux-musl/include \
243+ -L/usr/local/aarch64 -linux-musl/lib \
247244 -lssl -lcrypto \
248245 && true
249246
0 commit comments