Magellan Linux

Diff of /trunk/include/meson.sminc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 29793 by niro, Thu Oct 12 11:38:00 2017 UTC revision 33239 by niro, Mon Oct 21 09:58:50 2019 UTC
# Line 36  meson_with() Line 36  meson_with()
36  meson_without()  meson_without()
37  {  {
38   local feature="$1"   local feature="$1"
39   echo "-Dwith-{feature}=false"   echo "-Dwith-${feature}=false"
40    }
41    
42    meson_bool_true()
43    {
44     local feature="$1"
45     meson_opt "${feature}" "true"
46    }
47    
48    meson_bool_false()
49    {
50     local feature="$1"
51     meson_opt "${feature}" "false"
52  }  }
53    
54  # generic meson opts  # generic meson opts
# Line 61  meson_configure() Line 73  meson_configure()
73   default_opts+=" --prefix=/usr"   default_opts+=" --prefix=/usr"
74   default_opts+=" --sysconfdir=/etc"   default_opts+=" --sysconfdir=/etc"
75   default_opts+=" --localstatedir=/var/lib"   default_opts+=" --localstatedir=/var/lib"
  default_opts+=" --libdir=/usr/$(mlibdir)"  
  default_opts+=" --libexecdir=/usr/$(mlibdir)/${PNAME}"  
76    
77   if [[ ${MULTILIB_BUILD} = true ]]   if [[ ${MULTILIB_BUILD} = true ]]
78   then   then
79   ABI_DO_NOT_ENTER_SRCDIR=false all-abis meson setup ${default_opts} ${configure_opts} ${SRCDIR}-$(mabi)/${SRCSUBDIR} || die   # must be escaped so the mlibdir variable gets evaluated later
80     default_opts+=' --libdir=/usr/$(mlibdir)'
81     default_opts+=' --libexecdir=/usr/$(mlibdir)/${PNAME}'
82     : ${MESON_SRCDIR="${SRCDIR}-$(mabi)/${SRCSUBDIR}"}
83     : ${MESON_BUILDDIR="${BUILDDIR}/build-$(mabi)"}
84     all-abis meson setup ${default_opts} ${configure_opts} ${MESON_SRCDIR} ${MESON_BUILDDIR} || die
85   else   else
86   meson setup ${default_opts} ${configure_opts} ${SRCDIR}/${SRCSUBDIR} || die   # the mlibdir variable gets right now evaluated
87     default_opts+=" --libdir=/usr/$(mlibdir)"
88     default_opts+=" --libexecdir=/usr/$(mlibdir)/${PNAME}"
89     : ${MESON_SRCDIR="${SRCDIR}/${SRCSUBDIR}"}
90     : ${MESON_BUILDDIR="${BUILDDIR}/build"}
91     meson setup ${default_opts} ${configure_opts} ${MESON_SRCDIR} ${MESON_BUILDDIR} || die
92   fi   fi
93  }  }
94    
95  mninja()  mninja()
96  {  {
97     local abi
98     local abis_to_run="${MULTILIB_ABIS}"
99    
100     # respect MULTILIB_ONLY_ABI variable
101     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
102    
103   if [[ ${MULTILIB_BUILD} = true ]]   if [[ ${MULTILIB_BUILD} = true ]]
104   then   then
105   all-abis ninja -C ${SRCDIR}-$(mabi)/${SRCSUBDIR} -v ${MAKEOPTS} "$@"   for abi in ${abis_to_run}
106     do
107     echo -e "${COLBLUE}*** ${COLGREEN}running ninja for ABI -${abi}${COLDEFAULT}"
108     : ${MESON_SRCDIR="${SRCDIR}-$(mabi)/${SRCSUBDIR}"}
109     : ${MESON_BUILDDIR="${BUILDDIR}/build-$(mabi)"}
110     abi-${abi} ninja -C ${MESON_SRCDIR} -C ${MESON_BUILDDIR} -v ${MAKEOPTS} "$@"
111     done
112   else   else
113   ninja -C ${SRCDIR}/${SRCSUBDIR} -v ${MAKEOPTS} "$@"   : ${MESON_SRCDIR="${SRCDIR}/${SRCSUBDIR}"}
114     : ${MESON_BUILDDIR="${BUILDDIR}/build"}
115     ninja -C ${MESON_SRCDIR} -C ${MESON_BUILDDIR} -v ${MAKEOPTS} "$@"
116   fi   fi
117  }  }
118    
119  meson_setup_builddir()  meson_setup_builddir()
120  {  {
121     local abi
122     local abis_to_run="${MULTILIB_ABIS}"
123    
124     # respect MULTILIB_ONLY_ABI variable
125     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
126    
127   if [[ ${MULTILIB_BUILD} = true ]]   if [[ ${MULTILIB_BUILD} = true ]]
128   then   then
129   all-abis install -d ${BUILDDIR}/build-$(mabi) || die   for abi in ${abis_to_run}
130     do
131     echo -e "${COLBLUE}*** ${COLGREEN}running ninja for ABI -${abi}${COLDEFAULT}"
132     : ${MESON_BUILDDIR="${BUILDDIR}/build-$(mabi)"}
133     abi-${abi} install -d ${MESON_BUILDDIR} || die
134     done
135   else   else
136   install -d ${BUILDDIR}/build || die   : ${MESON_BUILDDIR="${BUILDDIR}/build"}
137     install -d ${MESON_BUILDDIR} || die
138   fi   fi
139  }  }
140    
# Line 96  meson_src_compile() Line 142  meson_src_compile()
142  {  {
143   if [[ ${MULTILIB_BUILD} != true ]]   if [[ ${MULTILIB_BUILD} != true ]]
144   then   then
145   cd ${SRCDIR}   : ${MESON_SRCDIR="${SRCDIR}"}
146     cd ${MESON_SRCDIR}
147   fi   fi
148    
149   meson_setup_builddir || die   meson_setup_builddir || die
# Line 106  meson_src_compile() Line 153  meson_src_compile()
153    
154  meson_src_check()  meson_src_check()
155  {  {
156   cd ${BUILDDIR}/build   : ${MESON_BUILDDIR="${BUILDDIR}/build"}
157     cd ${MESON_BUILDDIR}
158   meson test || die   meson test || die
159  }  }
160    
# Line 119  meson_multilib_src_check() Line 167  meson_multilib_src_check()
167   [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"   [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
168   for abi in ${abis_to_run}   for abi in ${abis_to_run}
169   do   do
170   cd ${BUILDDIR}/build-${abi}   : ${MESON_BUILDDIR="${BUILDDIR}/build-${abi}"}
171     cd ${MESON_BUILDDIR}
172   meson test || die   meson test || die
173   done   done
174  }  }
175    
176  meson_src_install()  meson_src_install()
177  {  {
178   cd ${BUILDDIR}/build   : ${MESON_SRCDIR="${SRCDIR}"}
179     : ${MESON_BUILDDIR="${BUILDDIR}/build"}
180    
181     cd ${MESON_BUILDDIR}
182   DESTDIR=${BINDIR} ninja install || die   DESTDIR=${BINDIR} ninja install || die
183    
184   cd ${SRCDIR}   cd ${MESON_SRCDIR}
185   local i   local i
186   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \
187   FAQ LICENSE NEWS README TODO   FAQ LICENSE NEWS README TODO
188   do   do
189   if [ -f ${SRCDIR}/${i} ]   if [ -f ${MESON_SRCDIR}/${i} ]
190   then   then
191   minstalldocs ${i} || die   minstalldocs ${i} || die
192   fi   fi
# Line 150  meson_multilib_src_install() Line 202  meson_multilib_src_install()
202   [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"   [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
203   for abi in ${abis_to_run}   for abi in ${abis_to_run}
204   do   do
205   cd ${BUILDDIR}/build-${abi}   : ${MESON_SRCDIR="${SRCDIR}-${abi}"}
206     : ${MESON_BUILDDIR="${BUILDDIR}/build-${abi}"}
207    
208     cd ${MESON_BUILDDIR}
209   DESTDIR=${BINDIR} ninja install || die   DESTDIR=${BINDIR} ninja install || die
210    
211   cd ${SRCDIR}-${abi}   cd ${MESON_SRCDIR}
212   local i   local i
213   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \
214   FAQ LICENSE NEWS README TODO   FAQ LICENSE NEWS README TODO
215   do   do
216   if [ -f ${SRCDIR}-${abi}/${i} ]   if [ -f ${MESON_SRCDIR}/${i} ]
217   then   then
218   minstalldocs ${i} || die   minstalldocs ${i} || die
219   fi   fi

Legend:
Removed from v.29793  
changed lines
  Added in v.33239