mrrl

Minimal Reliable Reproducible Linux
git clone https://ccx.te2000.cz/git/mrrl
Log | Files | Refs | Submodules | README

musl (3257B)


      1 {%- set gcc_ver=target_gcc_version|default("13.4.0") -%}
      2 {%- set pkg_version="1.2.5" -%}
      3 {%- set pkg_source="tar.gz" -%}
      4 {%- set arch=triplet.split("-")[0] -%}
      5 {% extends "genlinks_mini" %}
      6 {% do setitem(env_template, "CPATH", "@ENVROOT@/"~includedir) %}
      7 {% do setitem(env_template, "LIBRARY_PATH", "@ENVROOT@/"~libdir) %}
      8 {% do setitem(env_template, "LD_LIBRARY_PATH", "@ENVROOT@/"~dynlibdir) %}
      9 {% do setitem(env, "CFLAGS", "-Og -g") %}
     10 {% do setitem(env, "CXXFLAGS", "-Og -g") %}
     11 {%- block template_deps %}{% endblock %}
     12 {% block package_deps -%}
     13 #+{{pkg_install_name("musl-cross-make:bootstrap-1")}}
     14 #+{{pkg_install_name("gnu-make:bootstrap")}}
     15 #+{{pkg_install_name("busybox:bootstrap")}}
     16 #+{{pkg_install_name("nawk:bootstrap")}}
     17 #@sha256:{{files["mcm-"~shortname~"-"~pkg_version~"-merged.diff"]}}:merged.patch
     18 {% endblock package_deps %}
     19 {% block prepare %}
     20 {{- super() }}
     21 patch -p1 <../merged.patch
     22 {% endblock prepare %}
     23 {% block configure %}
     24 mcm={{versions}}/musl-cross-make.{{pkg_sha256("musl-cross-make:bootstrap-1")}}
     25 
     26 ./configure \
     27 	--prefix="$prefix" \
     28 	--bindir="$prefix/{{bindir}}" \
     29 	--libdir="$prefix/{{libdir}}" \
     30 	--syslibdir="$prefix/{{dynlibdir}}" \
     31 	--includedir="$prefix/{{includedir}}" \
     32 	--host=x86_64-linux-musl \
     33 	--build="$(${CC:-gcc} -dumpmachine)" \
     34 	CC="$mcm/bin/{{triplet}}-gcc" \
     35 	CXX="$mcm/bin/{{triplet}}-g++" \
     36 	LIBCC="$mcm/lib/gcc/{{triplet}}/{{gcc_ver}}/libgcc.a"
     37 
     38 {%- endblock configure %}
     39 {%- block build %}
     40 {{make}} \
     41 	MULTILIB_OSDIRNAMES= \
     42 	INFO_DEPS= \
     43 	infodir= \
     44 	ac_cv_prog_lex_root=lex.yy \
     45 	MAKEINFO=false \
     46 	AR="$mcm/bin/{{triplet}}-ar" \
     47 	RANLIB="$mcm/bin/{{triplet}}-ranlib"
     48 
     49 {%- endblock build %}
     50 {%- block install %}
     51 make \
     52 	MULTILIB_OSDIRNAMES= \
     53 	INFO_DEPS= \
     54 	infodir= \
     55 	ac_cv_prog_lex_root=lex.yy \
     56 	MAKEINFO=false \
     57 	AR="$mcm/bin/{{triplet}}-ar "\
     58 	RANLIB="$mcm/bin/{{triplet}}-ranlib" \
     59 	DESTDIR="$pthbs_destdir" \
     60 	install install-headers
     61 
     62 mkdir -p "$dest/{{dynlibdir}}"
     63 mv -v "$dest/{{libdir}}"/*.so "$dest/{{dynlibdir}}/"
     64 ln -s -f libc.so "$dest/{{dynlibdir}}/ld-musl-{{arch}}.so.1"
     65 
     66 {%- endblock install %}
     67 {% block genlinks_begin %}
     68 	{{- super() }}
     69 	x["./{{dynlibdir}}/libc.so"]=1
     70 	x["./{{dynlibdir}}/ld-musl-{{arch}}.so.1"]=1
     71 
     72 	x["./{{includedir}}/assert.h"]=1  # standard headers as per C11
     73 	x["./{{includedir}}/complex.h"]=1
     74 	x["./{{includedir}}/ctype.h"]=1
     75 	x["./{{includedir}}/errno.h"]=1
     76 	x["./{{includedir}}/fenv.h"]=1
     77 	x["./{{includedir}}/float.h"]=1
     78 	x["./{{includedir}}/inttypes.h"]=1
     79 	x["./{{includedir}}/iso646.h"]=1
     80 	x["./{{includedir}}/limits.h"]=1
     81 	x["./{{includedir}}/locale.h"]=1
     82 	x["./{{includedir}}/math.h"]=1
     83 	x["./{{includedir}}/setjmp.h"]=1
     84 	x["./{{includedir}}/signal.h"]=1
     85 	x["./{{includedir}}/stdalign.h"]=1
     86 	x["./{{includedir}}/stdarg.h"]=1
     87 	{#- x["./{{includedir}}/stdatomic.h"]=1  # in ./lib/gcc/... #}
     88 	x["./{{includedir}}/stdbool.h"]=1
     89 	x["./{{includedir}}/stddef.h"]=1
     90 	x["./{{includedir}}/stdint.h"]=1
     91 	x["./{{includedir}}/stdio.h"]=1
     92 	x["./{{includedir}}/stdlib.h"]=1
     93 	x["./{{includedir}}/stdnoreturn.h"]=1
     94 	x["./{{includedir}}/string.h"]=1
     95 	x["./{{includedir}}/tgmath.h"]=1
     96 	x["./{{includedir}}/threads.h"]=1
     97 	x["./{{includedir}}/time.h"]=1
     98 	x["./{{includedir}}/uchar.h"]=1
     99 	x["./{{includedir}}/wchar.h"]=1
    100 	x["./{{includedir}}/wctype.h"]=1
    101 
    102 {% endblock %}